Přehled odpovědí
-
AutorPříspěvky
-
V konzoli to zobrazuje 404. Problém bude možná v adrese a to kvůli tomu, že šablonu vytvářím na WordPressu nainstalovaném na XAMPP.
V konzoli se zobrazuje adresa k JS tato:
http://localhost/myprojects/mujweb/bootstrap/js/bootstrap.min.jsCož je asi špatně.
Nevím, jestli se to bude takto chovat i na hostingu. Jak to případně napravit? Předpokládám, že funkce get_template_directory_uri() má přeci doplnit url až k adresáři šablony.
Zdravím,
díky. Mně jde právě i o obsah na webu a články, ne jen samotnou šablonu.Našel jsem teď plugin “Private Site”. Ten zablokuje celý web, ale je možné zadat stránky, které mají být veřejné. Což funguje docela dobře.
Jen je teď nutné nějak pořešit přístup k mediálním souborům, protože po zadání trvalého odkazu je možné se k ním dostat.
A nevýhodou toho pluginu je, že už nebyl asi 8 měsíců aktualizovaný, což z hlediska bezpečnosti asi nebude moc dobré.
Zkoušel jsem ho, ale blokuje pouze detail příspěvku. Já mám v menu 4 stránky = 3 statické, které budou viditelné všem a čtvrtou s výpisem příspěvků.
Tento výpis příspěvků chci zobrazit jen členům. Takže po kliknutí na odkaz v menu “Pro členy” se nesmí zobrazit obsah, ale přihlášení.
Potřebuji tedy zablokovat celou část webu s příspěvky, včetně kategorií příspěvků.
O tom vím, ale právě že naopak potřebuji mít ty kategorie roztříděné do podkategorií v administraci, abych se v nich vyznal (např. při přidávání kategorie novému článku atd.).
Aháá, tak tady to je. V databází je meta_value 20160319. Takže pomohlo nastavit date(‘Ymd’).
Takže ACF s tím formátem pracuje trošku jinak, než jsem předpokládal dle zápisu yymmdd.
Teď by to snad mělo fungovat bez problému. Mockrát děkuji za pomoc.
<div class="row"> <?php $the_query = new WP_Query( array( 'post_type' => 'akce', 'order' => 'ASC', 'orderby' => 'meta_value', 'meta_key' => 'datum', 'posts_per_page' => 1, 'meta_value' => date('Ymd'), 'meta_key' => 'datum', 'meta_compare' => '>=', ) ); while ( $the_query->have_posts()) : $the_query->the_post(); ?> <div class="akce-hp"> <!-- Obsah jedné akce --> </div> <?php endwhile; wp_reset_query(); ?> </div>
Ve formátu yymmdd, což by mělo být asi to stejné jako date(‘ymd’) v php. Pokud jsem to podle specifikace správně pochopil.
Z ACF mám ve function.php toto…
if(function_exists("register_field_group")) { register_field_group(array ( 'id' => 'acf_akce', 'title' => 'Akce', 'fields' => array ( array ( 'key' => 'field_569cf1f7397f5', 'label' => 'Datum', 'name' => 'datum', 'type' => 'date_picker', 'required' => 1, 'date_format' => 'yymmdd', 'display_format' => 'dd/mm/yy', 'first_day' => 1, ), ), 'location' => array ( array ( array ( 'param' => 'post_type', 'operator' => '==', 'value' => 'akce', 'order_no' => 0, 'group_no' => 0, ), ), ), 'options' => array ( 'position' => 'side', 'layout' => 'default', 'hide_on_screen' => array ( ), ), 'menu_order' => 0, )); }
To jsem také zkoušel. Pokud vás chápu, tak takto:
<div class="row"> <?php $the_query = new WP_Query( array( 'post_type' => 'akce', 'order' => 'ASC', 'orderby' => 'meta_value', 'meta_key' => 'datum', 'posts_per_page' => 1, 'meta_query' => array( array( 'meta_value' => date('ymd', strtotime("today") ), 'meta_key' => 'datum', 'meta_compare' => '>=', ), ), ) ); while ( $the_query->have_posts()) : $the_query->the_post(); ?> <div class="akce-hp"> <!-- Obsah jedné akce --> </div> <?php endwhile; wp_reset_query(); ?> </div>
Ale i tak to z nějakého důvodu stále nefunguje jak má :(
Díky. Jj, potřebuji to u detailu produktu. Bohužel toto řešení má celkem nevýhodu v tom, že to počáteční dvojčíslí je často stejné.
Tak mě napadlo, jestli by nešlo u každého produktu vygenerovat náhodné dvojčíslí které by se uložilo do databáze, třeba pomocí
rand(5, 80)
Našel jsem nějaké řešení asi tady: http://wordpress.stackexchange.com/questions/167539/generating-a-random-number-on-every-post-and-saving-it-in-database
if( function_exists( 'get_post_random_wpse' ) ) echo get_post_random_wpse( $post_id = get_the_ID(), $meta_key = '_post_random', $meta_value = rand( 1000, 10000 ) );
function get_post_random_wpse( $post_id = 0, $meta_key = '_post_random', $meta_value = 0 ) { if( ! ( $post_id > 0 && strlen( $meta_key ) > 0 ) ) return 0; if( '' === ( $post_rand = get_post_meta( $post_id, $meta_key, true ) ) ) update_post_meta( $post_id, $meta_key, $post_rand = $meta_value ); return $post_rand; }
Jen nevím, kam s těmi kódy? Do function.php?
A jak ho upravit pro woocommerce? Napadlo mě:
if( function_exists( 'get_post_random_wpse' ) ) echo get_post_random_wpse( $product = get_id(), $meta_key = '_post_random', $meta_value = rand( 1000, 10000 ) );
function get_post_random_wpse( $product = 0, $meta_key = '_post_random', $meta_value = 0 ) { if( ! ( $product > 0 && strlen( $meta_key ) > 0 ) ) return 0; if( '' === ( $post_rand = get_post_meta( $product, $meta_key, true ) ) ) update_post_meta( $post_id, $meta_key, $post_rand = $meta_value ); return $post_rand; }
Jen si nejsem úplně 100% jistý správností těch proměnných a funkcí pro woocommerce
Zdravím,
děkuji mockrát. Ušetřilo mi to spoustu času :) Kdysi jsem to u jednoho webu řešil ručně a bylo to peklo. Naštěstí těch produktů nebylo tolik jako nyní, to už by bylo nereálné :)5. ledna 2016 (16:56) odpověď na téma: Seo friendly filter (obecně taxonomy nebo woocommerce) #26005Právě že to duplicita asi není, protože se mění titulek, nadpis i description a zároveň i produkty na stránce podle nastavení filtru. To by pak za duplicitu mohly být považovány i dvě odlišné kategorie produktů. Ale nejsem SEO specialista a beru to podle své laické logiky a toho, co mám nastudováno od SEO odborníků :)
Ad. řazení parametrů. To bude asi hodně záležet na analýze klíčových slov a podle ní sestavené struktury webu. Bylo by fajn, kdyby si to mohl uživatel nastavit podle sebe, jak mu to vyhovuje.
Ad. automatický text a description. Nevím, jak se na takto automaticky generovaný text dívají vyhledávače, které obecně automaticky generované texty asi moc nemusí. Bylo by proto fajn, kdyby i ten text se dal pro nějakou konkrétní kombinaci třeba ručně upravit. Nebo pomocí nějakých podmínek nastavit více takových textů. Ale to už bych asi chtěl hodně, protože k těm automaticky vytvořeným “kategoriím” není ve wordpressu přístup, jako je tomu třeba u klasických kategorií, kde se dá popisek individuálně nastavovat.
Ale zase by se to hodilo třeba v případě, kdy mám např. v eshopu trička i čepice. Protože by nemuselo být ideální zobrazovat stejný automatický text v obou kategoriích a pro každou by to chtělo trošku něco jiného.
5. ledna 2016 (10:04) odpověď na téma: Seo friendly filter (obecně taxonomy nebo woocommerce) #25986Právě naopak. Díky tomu vznikne spousta vstupních stránek s longtailovými klíčovými slovy. Třeba. trička dámské černé, košile dámské bílé atd…
Vytváří se tím unikátní url s klíčovými slovy, titulkem a nadpisem h1 stránky. Ještě úplně nejlepší by bylo, kdyby bylo možné editovat i meta description a krátký text dané “vygenerované kategorie” (pod nadpisem stránky h1) – třeba i s pomocí proměnných.
Viz. Pavel Ungr v této prezentaci o seo u eshopů: https://youtu.be/hK4qn_vORgs?t=11m58s
Jo to je fakt, protože z pohledu SEO e-shopu je takové fungování filtru velmi podstatné a užitečné.
Celkem se divím, že takový plugin neexistuje, nebo že to WP neumí. Možná ale bude háček jinde a vzhledem k tomu, že WP není primárně eshopový systém, tak to třeba není až tak jednoduché tam tuto funkci dostat.
Díky. To nastavení memory_limitu jsem dnes někde na webu našel, ale bohužel mi to nefungovalo. Asi i tak malá hodnota :)
Nakonec se mi to podařilo vyřešit tím způsobem, že jsem dal do adresy
/wp-admin/edit.php?post_status=draft&post_type=product
Díky tomu jsem se dostal alespoň do konceptů. Jelikož žádné nemám, tak se stránka načetla a na ní bylo možné změnit počet zobrazovaných položek zpátky na 20.
Jelikož mám ve woocommerce hodně produktů, tak jsem u nich chtěl najednou editovat kategorie atd. ať to nemusím dělat jen po dvaceti. Asi ale budu muset najít jiné řešení a naučit se pracovat s databází :)
2. ledna 2016 (23:36) odpověď na téma: Seo friendly filter (obecně taxonomy nebo woocommerce) #25926Zdravím,
takový plugin hledám už dlouho a proto bych se rád připojil k otázce. Případně se tě zeptal, jestli se ti už povedlo něco najít?Díky
Případně jakým způsobem by se dal ten počet položek vrátit zpět na 20, když se nemůžu do té administrace kvůli tomu dostat?
No já potřebuji úplně všechny produkty, které jsou ve wordpressu naimportované dát do konceptu. Bez rozlišování kategorií atd. Ale práce s databází je pro mě trošku velká neznámá.
Našel jsem na netu tento kód:
UPDATE
wp_postsSET
post_status= 'draft' WHERE
post_type= 'product' AND
post_type= 'publish'
http://stackoverflow.com/questions/27927722/mark-all-products-as-draft-woocommerce
Otázkou je, jestli je správný a kam s ním.
Děkuji
Díky moc, mrknu na to :)
Aha, to mě nenapadlo řešit takto jednoduše. Díky
Děkuji, poslal jsem Vám email.
Kódování bohužel nedělam.
HTML a CSS sice ovládám, ale jelikož se věnuji hlavně grafice, tak si v něm nejsem úplně jistý a mám v něm mezery. Proto si zatím koduji jen vlastní projekty stavěné na bootstrapu a nenabízím tyto služby klientům.
-
AutorPříspěvky