• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    QUITEwordpress
    PULKA
    PULKA --- ---
    WOJTISHEK: otázka mimo, dá se vůbec sales price nastavit vyšší? mám takový pocit, že je tam per default check, když to ukládá (ale jsem na mobilu, tak nevím)
    MRTVY_KENNY
    MRTVY_KENNY --- ---
    WOJTISHEK: a debugujes to nejakym SQL monitorem, co ti to tvori za konkretni SQL a co ten dotaz teda vrati/nevrati z db?
    WOJTISHEK
    WOJTISHEK --- ---
    MRTVY_KENNY: to taky není ono :(

    Přemýšlím, jestli jsem to nenapsal špatně...
    mám postmeta db, kde je :

    |---------|---------|----------------|------------|
    | meta_id | post_id | meta_key       | meta_value |
    |---------|---------|----------------|------------|
    |    1    |    1    | _regular_price | 10000      |
    |    2    |    1    | _sale_price    | 9000       |
    |---------|---------|----------------|------------|
    


    a já potřebuji pomocí meta_query zjistit, jestli u daného post_id je _sale_price nižší, než _regular_price.
    MRTVY_KENNY
    MRTVY_KENNY --- ---
    sorry, ze otravuju, ale kdo ma nekde nejaky plugin od toret/musilka, zkuste precist...
    pokud jsem mimo, klidne reagujte proc. pokud vas to sere taky, nezaskodilo by mu napsat... me to treba irituje a asi si to upravim a pri kazde aktualizaci budu muset znovu. porad ale lepsi, nez klientovi na pozadani menit ceny.
    napsal mi, ze dekuje za podnet, ale implementovat to nejspis nebude (jako je to uprava dvou slov v kodu, takze to zvladnu i sam)
    ---

    Dobry den,
    ted resim u klienta mimo jine i vase pluginy a rad bych zopakoval vec, kterou jsem psal nekomu pres chat (nevim, kolik vas tam je).
    Apeloval jsem na upravu prav pro admin stranky nastaveni pluginu, jeste si to dovolim zopakovat tudy:

    Pravidla bezpecnosti WP ovladam, vsichni mi klienti maji weby zabezpecene, aktualizovane atd, rsp. jim delam technicky servis a NIKDO z klientu nema roli administratora.

    Proto mi prijde trosku absurdni, ze u vasich pluginu vidi klient nejake logy, ale nema pristup do nastaveni. Tzn sice vidi neco, cemu vubec nerozumi (nejake JSONy, kody odpovedi serveru atd), ale nemuze si samostatne zmenit treba cenu dopravy. Toto mi prijde logicke presne naopak, u WC davam klientum Shop Manager roli a tato by mela byt schopna si podle me nastavit i ceny a dopravce, stejne jako je to schopna udelat ve WC samotnem. Naopak technicke logy ji nemaji co zajimat a ty jsou vhodne maximalne pro me, ktery systemu rozumi technicky jakozto administrator.

    Na chatu mi pan argumentoval, ze to je z bezpecnostnich duvodu. To jsem psal i mu a na tento argument tvrdim, ze je to presne naopak, protoze me tim vlastne nutite:
    a/ pridelit klientovi roli administratora, i kdyz neni zadny admin, systemu technicky nerozumi a nechcu, aby vrtal do nastaveni
    b/ vas plugin “hacknout” a nastavit si capability ne na manage_options, ale na adekvatni shop managerovi. (mmch proc maji treba ty logy capability “read”, vubec nechapu)
    c/ nechat to tak a nechat klienta me otravovat kvuli prenastavovani cen dopravy, coz si zaplati. uplne zbytecne

    Tzn prosim, zkuste se nad veci zamyslet, nerikam, ze mam patent na rozum, ale jak to mate napsano ted, mi z praktickeho hlediska nedava zadny smysl a ani neni v souladu s nastavenim obdobnych dalsich pluginu pro WC..

    Dekuji :)
    WOJTISHEK
    WOJTISHEK --- ---
    PULKA: super, na trac se podívám. Děkuji :)
    PULKA
    PULKA --- ---
    WOJTISHEK: Myslím, že kromě OR/AND to nejde, nic jsem k tomu nenašla kromě toho, že si tady můžeš nad tím dát svůj dotaz https://core.trac.wordpress.org/ticket/20312#comment:3
    WOJTISHEK
    WOJTISHEK --- ---
    PULKA: Nejsem si jist, jestli mi to resi to, co potrebuji. Tenhle stack jsem nasel, ale je tam kontrola vzdy jednoho key oproti vice values. Ja potrebuji porovnat dve hodnoty dvou klicu vzajemne proti sobe.

    Narocnost vim, nastesti je to pouze pro podkladani wp query, ktere se pote “prelozi” pomoci elasticpressu do ES.
    PULKA
    PULKA --- ---
    WOJTISHEK: Dá, viz třeba tady: https://wordpress.stackexchange.com/questions/40322/query-multiple-meta-key-values ale pozor na výkon. Leckdy je lepší si napsat vlastní SQL než to honit přes WordPress.
    WOJTISHEK
    WOJTISHEK --- ---
    Dá se v rámci meta_query dotazu porovnávat dle dvou meta values?
    Dávám to celé do hooku pre_get_posts, mám 2 postmety regular_price a sale_price (klasické Woo) a potřebuji v jednom query porovnat, jestli je regular_price > sale_price, něco ve stylu:

    
    'meta_query' => 
    [
      [
        'key' => '_sale_price',
        'compare' => '<',
        'value' => '_regular_price',
        'type' => 'numeric'
      ]
    ]
    


    Zkoušel jsem meta_key v query, bez úspěchu.
    Třeba něco přehlížím.
    APIN
    APIN --- ---
    MRTVY_KENNY: Oni to sice takhle označený mít mohou, ale to ještě neznamená, že to tak opravdu bude fungovat. Klidně si namátkově některý z nich vyber, skutečných full width šablon bude tak desetina ;)
    THEODORT
    THEODORT --- ---
    PAN_ILFORD: jj, v api je toho dost
    PAN_ILFORD
    PAN_ILFORD --- ---
    Je možný dynamicky pracovat s galerií jinak, než pomocí ACF Pro či Jet Engine?
    SYNTAX_TERROR
    SYNTAX_TERROR --- ---
    JUNIOR: Jde to, ale zapomeň na to, že nějak zvlášť ušetříte oproti vlastnímu řešení. My jsme taky vycházeli pro obdobný zadání z LearnDashe, ale nakonec byly požadavky tak specifický (jak to tak bývá, tak přibývaly v průběhu prací), že z learndashe zůstalo jen pramálo a 90 % funkcionality bylo naprganých ručně.
    CITRONAK
    CITRONAK --- ---
    JUNIOR: Tohle stavět na WP je šílenost. Každopádně držím palce...
    JUNIOR
    JUNIOR --- ---
    CITRONAK: Protože zadání. Logiku nehledat :)
    CITRONAK
    CITRONAK --- ---
    JUNIOR: Jen ze zvědavosti, proč to musí být WordPress?
    JUNIOR
    JUNIOR --- ---
    JUNIOR: Samozřejmě jsem googloval co to dá, WooCommerce Memberships znám, nikdy jsem nepoužil, ale nečtu na to moc dobrých recenzí. Nejlíp mi zatím vychází Learn Dash. Samozřejmě to musí být přeložitelné do češtiny.
    JUNIOR
    JUNIOR --- ---
    Jinak jsem se chtěl ještě zeptat zda tady nemá někdo zkušenost s následujícícm zadáním:

    Potřebuju vyřešit následující web, který se bude zabývat výukovým videem:

    Potřebuji udělat aby si člověk mohl v účtu udělat vlastní přehled nakoupených videí, aby viděl progres bar jak na tom je, mohl si přidávat oblíbené lektory, aby to fungovalo na základě členství, šlo tam předplácet členství dopředu na měsíc, čtvrt rok, půl rok, rok atd. Tak nějak se obávám, že to jeden plugin nepostihne a zda buou mezi sebou funkční. Kodovat to od základu je úplně mimo finanční realitu tak sem jdu s prosbou jestli s tím nemá už někdo zkušenosti ať nevymýšlím kolo a na co si dát pozor.

    Musí to být postavené na wordpress.

    Díky
    JUNIOR
    JUNIOR --- ---
    HARDCABB:
    WOJTISHEK:
    TRZNICE:

    Díky. Nakonec jí to bude řešit ručně nějakej chytrý kluk od počítačů co mají ve firmě :)
    TRZNICE
    TRZNICE --- ---
    JUNIOR: hadam bezi na to na woocommerce, si nenapsal, tak palim od boku
    TRZNICE
    TRZNICE --- ---
    JUNIOR:
    ACF options page, kde si pani zada casy, ty se pak sosnou do promennych $start_time / $end_time...
    Jen si uprav ten kod dole, respektive custom fields call si tam dopis misto tech promennych... Melo by to makat
    // Utility conditional funtion for store open hours (returns boolean true when store is open)
    function is_store_open() {
        // Set Your shop time zone (http://php.net/manual/en/timezones.php)
        date_default_timezone_set('Europe/Paris');
    
        // Below your shop time and dates settings
        $start_time = mktime('12', '00', '00', date('m'), date('d'), date('Y')); // 12:00:00
        $end_time   = mktime('22', '00', '00', date('m'), date('d'), date('Y')); // 22:00:00
        $now        = time(); // Current timestamp in seconds
    
        return ( $now >= $start_time && $now <= $end_time ) ? true : false;
    }
    
    // Disable purchases on closing shop time
    add_filter( 'woocommerce_variation_is_purchasable', 'disable_purchases_on_shop', 10, 2 );
    add_filter( 'woocommerce_is_purchasable', 'disable_purchases_on_shop', 10, 2 );
    function disable_purchases_on_shop( $purchasable, $product ) {
        // Disable purchases on closing shop time
        if( ! is_store_open() )
            $purchasable = false;
    
        return $purchasable;
    }
    
    // Cart and checkout validation
    add_action( 'woocommerce_check_cart_items', 'conditionally_allowing_checkout' );
    add_action( 'woocommerce_checkout_process', 'conditionally_allowing_checkout' );
    function conditionally_allowing_checkout() {
        if ( ! is_store_open() ) {
            // Store closed
            wc_add_notice( __("The Store is Closed… Purchases are allowed from 12:00 AM to 22:00 PM"), 'error' );
        }
    }
    
    add_action( 'template_redirect', 'closing_shop_notice' );
    function closing_shop_notice(){
        if ( ! ( is_cart() || is_checkout() ) && ! is_store_open() ) {
            // Store closed notice
            wc_add_notice( __("The Store is Closed… Purchases are allowed from 12:00 AM to 22:00 PM"), 'notice' );
        }
    }
    Kliknutím sem můžete změnit nastavení reklam