title: Treść niestandardowa przed treścią posta

text: Używam tego kodu do wstawiania niestandardowej treści po tytule i przed treścią. Jak mogę ograniczyć to tylko do "postów", a nie stron i niestandardowych typów postów. function theme_slug_filter_the_content( $content ) { $custom_content = 'TWOJA TREŚĆ JEST TUTAJ'; $niestandardowa_zawartość .= $zawartość; return $custom_content;} add_filter( 'treść', 'theme_slug_filter_the_content' );


title: Dlaczego otrzymuję ostrzeżenie o przekroczeniu limitu czasu?

text: Włączyłem tryb debugowania w WordPressie i przy pierwszym żądaniu tego dnia otrzymuję ten błąd: Ostrzeżenie: http_request() [function.http-request]: Osiągnięto limit czasu; Przekroczono limit czasu operacji po 1000 milisekund z otrzymanymi 0 bajtami (/wp-cron.php?doing_wp_cron) w /public/wp-includes/class-http.php w wierszu 1218 Wiem, czym są zadania cron i rozumiem, jak WordPress może chcieć uruchamiać zadania okresowe (a ponieważ HTTP jest bezstanowy, uruchomienie zadania "cron" przy pierwszym żądaniu dnia ma sens), ale dlaczego mija limit czasu?


title: Dostosowywanie motywu WordPress bez jego zmiany?

text: Znalazłem i pobrałem motyw. Jednak chcę trochę poprawić CSS, aby trochę zmienić wygląd, kolory itp. Jak mam to zrobić, jednocześnie będąc w stanie zaktualizować motyw bez utraty zmian.


title: Ukrywanie stylów z Facebooka

text: Niektóre z moich stron/postów mają na początku bardzo krótkie niestandardowe arkusze stylów. Wiem, że to nie jest świetna praktyka, ale jak dotąd działa bardzo dobrze. Problem polega jednak na linkowaniu na Facebooku: Facebook automatycznie generuje podgląd strony, który zawiera zdjęcie, tytuł strony i fragment z początku treści posta. Fragment treści wpisu pokazuje tylko arkusz stylów, który mam bezpośrednio w poście — Facebook nie ignoruje faktu, że jest to HTML. Co mogę zrobić po stronie WordPressa, aby naprawdę ukryć ten kod? Czy muszę umieścić wszystkie te style w moim niestandardowym CSS, a następnie nadać wszystkim odpowiednią klasę? (Aby wyjaśnić, tag `<style>` nie wyświetla się, tylko zawartość samego arkusza stylów. Nie wyświetla się na stronie w WordPressie, tylko we fragmencie Facebooka. Jest to blog prowadzony samodzielnie.)


title: problem z nawigacją niestandardowego walkera z udziałem ajax

text: Używam ajax w motywie nie napisanym przeze mnie. Ten ajax pobiera link, a następnie wsuwa tę stronę do widoku. działa dobrze. Aby to zrobić, musiałem zrobić niestandardowy chodzik dla wp_nav_menu, który dodaje dwa znaki do linku, dzięki czemu moje linki wyglądają tak w nav http://my-site.com/#!/post-1 mój problem z tym polega na tym, że podczas przeglądania jednej strony. Muszę ponownie załadować stronę WordPress, aby otrzymać pojedynczy post. Wtedy mój link będzie wyglądał tak http://my-site.com/?p=post-1 Więc kiedy najadę kursorem na nawigację, aby wrócić do poprzedniej lub nowej strony, tutaj zaczyna się mój problem. moja nawigacja pokazuje to jako wybór po kliknięciu http://my-site.com/?p=post-1#!/post-1 Nie wiem, dlaczego nie usunie poprzedniego adresu. Oto mój niestandardowy walker http://pastebin.com/Xn7NRiG7 Większość witryny ładuje posty i strony do indeksu, a następnie używa ajax do przewijania tej strony do widoku. Staram się, aby pojedyncze strony bloga były zewnętrzne względem funkcjonalności ajax. Próbowałem użyć do tego dwóch różnych menu, więc if( is_home() || is_page()){ $args = array( 'depth' => 3, 'container' => '', 'container_class' => '', 'menu_class' =>'', 'menu_id' => 'menu', 'fallback_cb' => 'default_menu','link_before' => '','link_after' => ' ', 'theme_location' => 'primary','walker' => nowy Amaranthe_Custom_Walker_Nav_Sub_Menu()); wp_nav_menu($args); } else { $args = array( 'depth' => 3, 'container' => '', 'container_class' => '','menu_class' =>'', 'menu_id' => 'menu', 'fallback_cb ' => 'default_menu','link_before' => '','link_after' => '', 'theme_location' => 'podstawowy'); wp_nav_menu($args); } ?> Czy masz pojęcie, jak mogę prawidłowo wrócić do przepływu ajax?


title: Przekierowanie na podstawie lokalizacji, ale bez wpływu na boty wyszukiwania

text: Klient ma odnoszącą sukcesy witrynę w Wielkiej Brytanii opartą na Wordpress i wprowadza na rynek amerykański oddział. Podczas gdy tworzone są amerykańskie podstrony, ma on stronę przechowującą, która jest widoczna dla odwiedzających z USA, którzy są na nią przekierowywani ze zwykłej strony głównej przez wtyczkę Geo Redirect. Właśnie zdałem sobie sprawę, że Geo Redirect przekierowuje również boty Google (i innych wyszukiwarek), co wcale nie jest dobre; czy ktoś ma stosunkowo proste rozwiązanie, które zrobiłoby to, co tak dobrze robi Geo Redirect, ale nie wpłynęłoby na wizyty botów wyszukiwarek?


title: do_action pojawia się poza menu?

text:
Używam funkcji "Dodaj dodatkowy kod do dowolnego menu" Billa Ericksona: <?php /** * Dodaj dodatkowy kod do dowolnego menu * @author Bill Erickson * @link http://www.bilerickson.net/customizing-wordpress -menus/ * * @param string $menu * @param object $args * @return string zmodyfikowane menu */ function be_menu_extras($menu, $args) { //$extras = '
Twoje dodatki idź tutaj
'; if ('secondary' == $args->theme_location) //zwróć $menu . $dodatki; zwróć $menu . '
' . do_action('posts_logout_link') . '
'; w przeciwnym razie zwróć $menu; } add_filter('wp_nav_menu_items','be_menu_extras', 10, 2); aby wstawić `do_action('posts_logout_link');` z wtyczki Logout Password Protected Posts. Czy ktoś może rzucić nieco światła na to, dlaczego `do_action` pojawia się poza `$menu`. Jeśli używam html, pojawia się on na końcu w menu zawiniętym w znaczniki `<li>`, tak jak powinno. (Użycie $dodatków wydawało się powielać link w innych obszarach.)


title: jQuery i AJAX nie działają z Select Form Element

text: Wydaje mi się, że mam dziwny problem z jQuery i nowo utworzonym formularzem/funkcją AJAX. Jestem całkiem nowy w AJAX, więc proszę o wyrozumiałość. Oto jQuery: jQuery('#wpuf_new_post_form').submit(function(e) { e.preventDefault(); var data2 = jQuery('#wpuf_new_post_form').serialize(); var ajaxurl = '<?php echo admin_url( 'admin-ajax.php'); ?>'; jQuery.ajax({ type: 'POST', url: ajaxurl, data: data2 + '&action=savedata', success: function(resp) { if(!resp) { alert ('Niepowodzenie!')}else{ alert(data2) } } }); }); Powyższy kod przyjmuje przesłanie mojego formularza `#wpuf_new_post_form`, serializuje dane, a następnie przekazuje je do mojej funkcji PHP: add_action('wp_ajax_nopriv_savedata', 'my_ajax_save_form'); add_action ('wp_ajax_savedata', 'my_ajax_save_form'); function my_ajax_save_form(){ $my_post = array( 'post_title' => $_POST['wpuf_post_title'], 'post_content' => $_POST['wpuf_post_content'], 'post_type' => $_POST['wpuf_post_type'], ' post_status' => 'opublikuj', ); wp_insert_post($my_post); $ this_post_ID = wp_insert_post ($ my_post); add_post_meta($this_post_ID, 'cf_user-timestamp', $_POST['cf_user-timestamp']); add_post_meta($this_post_ID, 'cf_project-id', $_POST['cf_project-id']); add_post_meta($this_post_ID, 'cf_bin-id', $_POST['cf_bin-id']); add_post_meta($this_post_ID, 'cf_status', $_POST['cf_status']); add_post_meta($this_post_ID, 'cf_schedule-date', $_POST['cf_schedule-date']); add_post_meta($this_post_ID, 'cf_reply-url', $_POST['cf_reply-url']); add_post_meta($this_post_ID, 'cf_from-user', $_POST['cf_from-user']); } Tworzenie postu i meta postu, jak pokazano powyżej, za pośrednictwem przesyłania AJAX, działa dobrze. Jedynymi trzema polami, które odmawiają działania, są elementy formularza `select`. Są to: * cf_project-id * cf_bin-id * cf_status Ponownie, wszystkie inne posty meta przesłane, jak pokazano powyżej, trafiają do bazy danych bez problemu. Tylko wartości elementów formularza `select` nie spełniają tej funkcji. Czy istnieje lepszy sposób obsługi zserializowanej wartości elementów formularza „select”? **PS:** Jeśli ma jakąkolwiek wartość, oto przykład zserializowanego ciągu, który jest przekazywany jako zmienna jQuery `data2`. Jak widać, format nie różni się od żadnego z pozostałych przesłanych elementów formularza: `_wpnonce=537e4539cc&_wp_http_referer=%2Fajax%2F&wpuf_post_title=1395254005136&wpuf_post_content=Testing&cf_user- timestamp=33%2C+11925+3% am&cf_project-id=3797&cf_bin- id=3325&cf_status=-status-today&cf_schedule-date=03%2F21%2F2014&cf_reply- url=&cf_from-user=&wpuf_post_type=post&wpuf_post_new_submit=yes`


title: Sortowanie elementów na ekranie edytora

text: Gdy nowi użytkownicy logują się do naszej witryny, muszą zorganizować szereg opcji ekranu, aby rozpocząć tworzenie niestandardowych pól i edycję witryny. Chciałbym wymusić określoną kolejność ich wyświetlania. Czy istnieje sposób na wymuszenie sortowania na ekranie edycji? ![tutaj wprowadź opis obrazu](http://i.stack.imgur.com/ywKll.jpg)


title: Dodać niestandardowe pole do łącza na interfejsie użytkownika?

text: Ustawiłem kilka niestandardowych pól 'artysta' i 'nazwa utworu', które wyświetlają się w następujący sposób: Wykonawca: <wprowadzane przez użytkownika> Nazwa utworu: <wprowadzane przez użytkownika> Moje pytanie, jak przekształcić wykonawcę i nazwę utworu w klikalny link? Tak, że gdy na przykład klikniesz na nazwisko wykonawcy, wyświetli się strona ze wszystkimi postami o tym nazwisku? Myśląc o tym, to trochę jak the_category() lub get_category_link, tylko ja używam pól niestandardowych.


title: różnica między metodami zapytania

text:
Patrząc w kodzie innych wtyczek/widgetów, zwykle widzę DWIE różne metody dla zapytania: jedna to: $args = array( 'numberposts' => $limit , // or, 1 lub 20 ... 'exclude' = > '1049', 'meta_key' => 'jakaś_meta', 'post_status'=>'opublikuj'); $recent_posts = get_posts( $args ); //lub get_recent_posts() lub jakakolwiek inna funkcja //zakończ zapytanie foreach( $recent_posts as $recent ){ // zrób coś z tablicą $pop_string .= '
' . $recent["post_title"] .'
 '; } echo $pop_string; druga metoda to: $orig_post = $post; global $post; / / zapytanie postów $my_query = new WP_Query('posts_per_page=5&meta_key=somekey&meta_compare=>=&meta_value=jakaśwartość&orderby=meta_value&order=ASC'); if( $my_query->have_posts() ) { while( $my_query->have_post $my_query->the_post(); $pop_string .= '
'; $pospstring .= the_title() . '
'; } } echo $pop_string; $post = $orig_post; wp_reset_query();Jestem bardzo ciekawy Jaka jest różnica między nimi.(nie chodzi mi o to, że jeden korzysta z tablicy a drugi z funkcji direct wp. - ale bardziej o możliwości techniczne) Rozumiem, że druga to "niestandardowa pętla" a pierwsza jest "poza" pętla - ale oba mogą być używane np. w widżetach, aby osiągnąć bardzo podobne wyniki (jeśli nie równe ..) 1. Czy jest coś, co jeden może zrobić, czego drugi nie może? i kiedy? 3. jakie byłyby względy, aby użyć jednego nad drugim i jak je wybrać?4.Czy jest różnica w wydajności?5.Jeśli chcę na przykład napisać kilka prostych widżetów do pobierania danych - co powinienem wybrać i dlaczego?


title: Utwórz stronę pobierania z linku opcji postu

text: Mam przycisk do pobrania. Zawiera link z opcji postu. Chcę, aby po kliknięciu przycisku pobierania wyświetliła się strona pobierania z linkiem w opcji postu zamiast bezpośredniego linku z niej. Proszę pomóż mi ! ![Opcja pobierania linku w poście](http://i.stack.imgur.com/i3epM.jpg) ![Strona pojedynczego posta z przyciskiem pobierania](http://i.stack.imgur.com/qlvLp .jpg) ![Strona, na której chcę wyświetlić link do pobrania, gdy klient kliknie przycisk pobierania](http://i.stack.imgur.com/1hAak.jpg)


title: Użycie nazwy pocztowej Unicode podczas korzystania z niestandardowych reguł generate_rewrite_

text: Mam niestandardowe reguły przepisywania, takie jak .. add_action('generate_rewrite_rules', function ($wp_rewrite) { $wp_rewrite->rules = array('products/(.+?)$' => 'index.php?post_type=product&name= $matches[1]') + $wp_rewrite->rules;... Ta reguła działa tylko wtedy, gdy `postname` jest w języku angielskim, ponieważ jeśli postname jest w innym języku, adres URL jest zakodowany, więc `$matches[1]` jest przechowuje zakodowaną wartość i musi być najpierw zdekodowana, aby uzyskać dopasowanie w bazie danych.Jak więc najpierw zdekodować `$matches[1]`, zanim zostanie użyty do zapytania bazy danych?


title: Uzyskaj główny termin z podterminu w Woocommerce

text:
Muszę pokazać * GŁÓWNY termin * podtermin 1 * podtermin 2 * … Za każdym razem, gdy klikam podtermin. To znaczy, nie chcę pokazywać innych warunków MAIN, tylko ten, który wybrałem za pomocą warunków podrzędnych. W `woocommerce-template.php` używam: function woocommerce_content() { if ( is_singular( 'product' )) { while ( have_posts() ) : the_post();?>

 <?php global $post; $terms = get_the_terms( $post->ID, 'product_cat' ); foreach ( $terms as $term ){ $category_id = $term->term_id; $category_name = $term->nazwa; $category_slug = $term->slug; echo '
slug, 'product_cat') .'">'.$category_name.'
'; }?>

 <?php woocommerce_get_template_part( 'treść' , 'single-product' );?>
 <?php endwhile; } else { ?>

 <?php globalne $wp_query; // pobierz obiekt zapytania $cat_obj = $wp_query->get_queried_object(); if($cat_obj) { $category_name = $cat_obj->name; $category_desc = $cat_obj->opis; $category_ID = $cat_obj->term_id; $category_slug = $cat_obj->slug; } woocommerce_subcats_from_parentcat_by_ID($category_ID) ?>

<?php woocommerce_page_title(); ?>

 <?php do_action( 'woocommerce_archive_description' ); ?> <?php if ( have_posts() ): ?> <?php do_action('woocommerce_before_shop_loop'); ?>
 <?php woocommerce_product_loop_start(); ?> <?php woocommerce_product_subcategories(); ?> <?php while ( have_posts() ): the_post(); ?>
 <?php woocommerce_get_template_part( 'treść', 'produkt' ); ?>
 <?php endwhile; // koniec pętli. ?> <?php woocommerce_product_loop_end(); ?>
 Działa dla pojedynczego produktu, ale jeśli kliknę na podtermin, MAIN znika. Funkcja, której używam w `functions.php` to: function woocommerce_subcats_from_parentcat_by_ID($parent_cat_ID) { $args = array( 'hierarchical' => 1, 'show_option_none' => '', 'hide_empty' => 0, 'parent' = > $parent_cat_ID, 'taksonomia' => 'product_cat' ); $subcats = get_categories($args); echo '
'; foreach ($subcats as $sc) { $link = get_term_link( $sc->slug, $sc->taksonomia ); echo '
'.$sc->nazwa.'
'; } echo '
'; } Czy możesz mi pomóc?


title: Uzyskaj konkretny obraz z galerii postów połączonej z post_id

text: Czy możliwe jest pobranie drugiego obrazu z galerii za pomocą `post_id`? Zwykle pracuję z `get_the_post_thumbnail`, ale w tym przypadku chciałbym uzyskać drugi obraz z galerii postów, a więc inny obraz niż główny obraz posta. Czy istnieje jakiś samouczek, aby to zdobyć?


title: Wykluczanie dodatkowych polecanych obrazów w galeriach Wordpress

text: Używam wtyczki, aby zapewnić obsługę wielu polecanych obrazów w Wordpress: http://wordpress.org/plugins/multiple-featured-images/ Próbuję wykluczyć zarówno standardowy polecany obraz, jak i drugi polecany obraz z wpis galerii (udało mi się wykluczyć standardowy, ale nie jestem pewien co do synax dla polecanego obrazu związanego z wtyczką). <?php echo do_shortcode('[gallery size="full" columns="1" exclude="' .get_post_thumbnail_id( $post->ID ) . ',' . kd_mfi_get_featured_image_id('$post_id') ' "]') ; ?> Jeśli ktoś jest zaznajomiony z tą wtyczką i mógłby tu pomóc, będę wdzięczny. Dziękuję!


title: Jak uporządkować kategorie w Woocommerce, które są rozłożone na wielu stronach?

text: Buduję sklep używając Woocommerce i muszę zarządzać dużą liczbą kategorii produktów. Chciałbym zmienić ich kolejność, aby pojawiły się w kolejności alfabetycznej. Jednak system zamawiania metodą „przeciągnij i upuść” dzieli kategorie na kilka stron i wydaje mi się, że nie mogę znaleźć sposobu na edycję całej listy lub przenoszenie elementów z jednej strony na drugą. Czy mogę to zrobić w jakiś sposób? Jeśli tak, jak to się robi? Dziękuję.


title: Tworzenie spójnych numerów permalinków do postów

text: Tworzę nową stronę internetową, ale nie mogę znaleźć rozwiązania mojego problemu z permalinkami. Moja główna strona internetowa to http://w3spine.com, wysyłam posty do mojej drugiej instalacji WP na http://w3lol.com, gdzie chcę, aby permalinki postów miały spójne liczby, takie jak w3lol.com/50, w3lol.com/ 51, w3lol.com/52, itd. Nie mogę użyć identyfikatora posta, ponieważ w wp_posts jest przechowywana cała masa innych rzeczy, a identyfikatory pomijają niektóre liczby (np. jeśli dany post ma identyfikator 50 w najlepszym przypadku, następny ma identyfikator 54 (50 to identyfikator postu, 51 i 52 to wersje umieszczone tam domyślnie, a 53 to załączony obraz do następnego posta), nie wspominając o tym, że jeśli zdarzy mi się zrobić wersję jakiegoś posta lub dodać strona lub cokolwiek, co ta liczba wzrośnie.Nie jest problemem używanie post slug jako permalink, ale zwykli użytkownicy będą mieli trudności/niemożliwe śledzenie poprzednich sesji, a ponadto miałem nadzieję, że uzyskam ten krótki adres URL. Jestem skłonny zaakceptować każde rozwiązanie, które pozwoli osiągnąć zamierzony przeze mnie efekt PS Używając ślimaka jako permalink (%postname%) mam na myśli to, że każdy post ma swoją nazwę i nie mogę jej zmienić na 50, 51, 52 itd., co jest oczywistym rozwiązaniem, które z drugiej strony spowoduje kolejny problem.


title: Wtyczka jest dostępna do aktualizacji, gdy jej nie ma

text: Opracowałem wtyczkę dla mojego klienta, ale z jakiegoś powodu mówi się, że aktualizacja jest dostępna. Podczas gdy nie mam pojęcia, jak wprowadzić aktualizację. Wtyczka mówi w polu aktualizacji o autorze o innym nazwisku (nie ja), jest to całkowicie zagmatwana sytuacja. Jeśli ktoś trafi na aktualizację, moja wtyczka może zostać nadpisana przez kogoś innego. Dlaczego tak się dzieje? Jak upewniam się, że nie jest aktualizowany w żaden inny sposób, tylko jeśli mam go do aktualizacji.


title: Zainstalować wtyczkę do komentarzy na Facebooku bez utraty wszystkich poprzednich komentarzy Wordpress?

text: Staram się umieszczać komentarze z Facebooka na blogu Wordpress, ale nie chcę stracić wszystkich poprzednich komentarzy. Jestem ciekaw czy ktoś ma jakieś pomysły jak to zrobić. Przejrzałem wiele różnych wtyczek i nie udało mi się znaleźć dobrego rozwiązania. Chciałbym znaleźć sposób, aby system komentarzy na Facebooku był domyślnym systemem komentarzy, a jeśli ktoś nie ma Facebooka (lub nie chce go używać), może użyć domyślnego systemu komentarzy wordpress (chyba że istnieje coś innego .) Inną opcją jest użycie domyślnej wtyczki wordpress we wszystkich poprzednich postach, a idąc dalej, używaj tylko wtyczki Facebooka. Po prostu nie chcę, aby wyglądało to tak, jakby wszystkie poprzednie posty nie miały komentarzy, kiedy faktycznie to robią, jeśli tak ma sens. Jestem otwarty na wszelkie pomysły, które masz. Dziękuję!


title: Jak posortować pętlę po najczęściej oglądanych

text:
Mam stronę i prawie z nią skończyłem. Nauczyłem się wiele o wordpressie, chociaż nadal jestem noobem, który nie wie nic o php lub programowaniu (oprócz html). Udało mi się stworzyć pętlę jako szablon strony. Ale chcę pokazać posty uporządkowane według najczęściej oglądanych i najwyżej ocenianych. Moja pętla wygląda tak <?php /* Nazwa szablonu: Najczęściej oglądane */ ?> query_posts( 'posts_per_page=5' );  <?php if ( have_posts() ): while ( have_posts() ): the_post(); ?>    <?php if ( in_category('3')) { ?>
 <?php } else { ?>
 <?php } ?>
<a href="<?php the_permalink() ?>" rel="zakładka" title="Stały link do <?php the_title_attribute(); ?>"><?php the_title(); ?>
  <?php the_time('F jS, Y') ?> by <?php the_author_posts_link() ?>
 <?php the_content(); ?>

Opublikowany w <?php the_category(', '); ?>

   <?php koniec; else: ?>
Przepraszamy, żadne posty nie pasują do Twoich kryteriów.
  <?php endif; ?> Naprawdę proste - zaczerpnięte z przykładów dokumentacji wordpress. Używam dwóch wtyczek wp-postviews i wp-postratings. Jak powinna wyglądać moja pętla, jeśli chcę zamawiać posty za pomocą tych wtyczek? Dużo go wyszukiwałem, ale nigdy nie znalazłem kompletnego przykładu - tylko fragmenty kodu, których nie wiem, gdzie je umieścić :( Z góry dziękuję!


title: Zezwolenie na zmianę autora postu

text: Próbuję stworzyć "ograniczonego administratora", ale nie mogę nadać temu użytkownikowi praw do zmiany autora postów. Zwykły administrator może zobaczyć rozwijaną opcję zmiany autora zarówno z Szybkiej edycji, jak i z edycji. Administrator „niestandardowy” **nie może** zobaczyć menu rozwijanego ani w szybkiej edycji, ani w normalnej edycji. Naprawdę nie wiem, czego jeszcze mógłbym brakować, aktywowałem prawie każdą "rolę" dla tego użytkownika: ![Pierwsza grupa ról](http://i.stack.imgur.com/q3u0l.png) ![ Druga grupa ról](http://i.stack.imgur.com/txFwM.png)


title: Zaktualizowano do wersji 3.8 i strony administracyjne są bardzo wolne. Jak zdiagnozować problem?

text: Zarządzam dużą wielostronną instalacją Wordpress z około 300 setkami użytkowników i blogów. Serwer jest zablokowany przed wysyłaniem żądań internetowych, więc zdefiniowałem usługę proxy w wp-config.php ( WP_PROXY_HOST i WP_PROXY_PORT ) Kilka tygodni temu zaktualizowałem do wersji 3.8. Wydawało się, że wszystko idzie dobrze, ale prawie od razu zauważyłem, że panel administracyjny jest nieco wolniejszy. Teraz, gdy użytkownicy wrócili z wakacji, zaczynają narzekać, że panel administracyjny jest sporadycznie powolny. Czasami jest szybki i responsywny, czasami ładowanie strony edycji zajmuje 20, 30 lub 60 sekund. Niestety nie mogę odinstalować ani ponownie zainstalować aktualizacji bez planowania przestoju i powiadomienia organizacji. Czy istnieje sposób na zdiagnozowanie problemu? Jakieś wtyczki lub pliki dziennika, na które powinienem patrzeć? error_log i access_log wydają się całkiem normalne. Czasami podczas edytowania strony użytkownicy widzą następujący błąd: > Utracono połączenie. Zapisywanie zostało wyłączone do czasu ponownego połączenia > na wszelki wypadek tworzymy kopię zapasową tego posta w Twojej przeglądarce. ![Utracono połączenie. Zapisywanie zostało wyłączone do czasu ponownego połączenia. Na wszelki wypadek tworzymy kopię zapasową tego posta w Twojej przeglądarce. ](http://i.stack.imgur.com/1Wz4H.jpg) Jeśli używam narzędzi programistycznych Chrome->karta Sieć, nie widzę zbyt wielu informacji poza tym, że ładowanie strony post.php trwa wiecznie. ![wolne ładowanie strony sieciowej](http://i.stack.imgur.com/amLag.jpg) Czy serwer proxy może przyczynić się do tego problemu? Jak mogę dotrzeć do sedna tego? Dziękuję


title: Przekierowywanie adresów URL z datami na adresy bez dat

text: Kiedy po raz pierwszy zacząłem pisać wpisy, postanowiłem umieścić miesiąc i dzień w adresach URL, myśląc, że mogą ich potrzebować. W końcu okazuje się, że nie. Odkryłem, że mogę uzyskać dostęp do konkretnego wpisu jako http://myblog.com/2013/02/16/my-entry http://myblog.com/my-entry Wpisanie drugiego doprowadziłoby po prostu do przekierowania 301 do pierwszego. Czy istnieje sposób, aby wpisanie długiej formy z datą przekierowało na drugą bez zrywania żadnych permalinków?


title: Ślimak zabrany, nie mogę znaleźć której strony

text: Pracuję na stronie znajomych i próbuję zaktualizować slug `example.com/blah`, ale kiedy aktualizuję slug/url do `/blah` i klikam ok, aktualizuje go do `/blah-2`. Oznacza to, że istnieje strona/post z tym ustawieniem. Przeszukałem kosz/itp. zarówno na stronach, jak i w postach i nie mogę go znaleźć. Wskoczyłem do DB, żeby się rozejrzeć i nie byłem w stanie go znaleźć również w DB. Chociaż nie jestem pro (początkujący w tym schemacie bazy danych). Gdzie mogę znaleźć, która strona/post ma ten slug, abym mógł naprawić ten bałagan? Zapytania do bazy danych, wtyczki do pomocy itp. Dzięki!


title: Zamawianie niestandardowego typu postu według niestandardowego pola bez tytułu

text: Moje posty niestandardowe nie mają tytułu, raczej opierają się na polach niestandardowych, a wszystkie rozwiązania, które wypróbowałem do tej pory, wydają się działać, jeśli tytuł jest obecny. <?php $stronicowany = (get_query_var('stronicowany')) ? get_query_var('stronicowane') : 1; $args = array( 'post_type' => 'people', 'posts_per_page' => 40, 'meta_key' => 'nazwisko', 'orderby' => 'meta_value', 'order' => 'ASC', 'paged ' => $stronicowany ); // Zapytanie query_posts( $args ); ?> To powinno działać (i działa z innymi niestandardowymi typami postów, które mają tytuł), ale nie wydaje mi się, aby działał na tych bez. „nazwisko” to niestandardowe pole w niestandardowym typie wpisu „ludzie”.


title: Zasada pojedynczej odpowiedzialności i klasy WP

text: Wciąż pracuję nad zasadami OOP i Solid. Mam trudności z poruszaniem się po wielu wywołaniach `nowych SomeClass();` lub dodawaniem ich do haka akcji ( `add_action( 'init', array( 'SomeClass', 'get_instance')`). Przykład: mam kontroler postów, którego używam do obsługi wszystkiego, co ma związek z postami: tworzenie, usuwanie, modyfikowanie jego statusu przez ajax itp. Myślę, że SRP wywołałby różne klasy do tworzenia/modyfikacji postów, ajax żądania itp. Czy istnieje lepszy sposób na utworzenie instancji tych klas inny niż new / add_action?Czuję, że będzie nadmierna liczba klas i instancji klas i ktoś już by coś wymyślił.Czy jestem szalony?


title: I18n nie działa we wtyczce

text: Jestem pewien, że popełniam głupi błąd, ale na całe życie nie wiem, co to może być. Niedawno przekonwertowałem jedną z moich większych wtyczek, aby wykorzystywała I18n (mój pierwszy raz zrobiłem to dla dowolnej z moich wtyczek). Widocznie używane są prawidłowe wywołania funkcji, ponieważ WP był w stanie wygenerować kompletny plik `POT` za pośrednictwem sekcji administratora mojej wtyczki. Na wszelki wypadek, oto kilka przykładów moich wywołań I18n: __('Ustawienia', 'Domena-wtyczki') _e('Wybierz, której użyć.', 'Domena-wtyczki') _n('Następujący identyfikator jest nieprawidłowy : ', 'Następujące identyfikatory są nieprawidłowe: ', count($złe), 'domena-wtyczki') Mój problem polega na tym, że tłumaczenie faktycznie się dzieje teraz, gdy wszystko jest na swoim miejscu. Mam pliki `plugin-domain-es_ES.[po/mo]` w katalogu języków w katalogu głównym mojej wtyczki i dodałem `define('WPLANG', 'es_ES');` do mojego `wp-config. php`. W głównym pliku wtyczki dodałem: add_action('plugins_loaded', array('PluginName', 'loadTextDomain')); class NazwaWtyczki { public static funkcja loadTextDomain() { load_plugin_textdomain('domena-wtyczki', false, katalog_wtyczek(__PLIK__) . 'języki/'); } } Dzięki temu, żadne tłumaczenie nie odbywa się w obszarach, w których powinno znajdować się w mojej wtyczce. Sprawdziłem również, że podpięcie zostało osiągnięte. Próbowałem też kilku innych hooków, w tym `admin_init` i `init`, ale wydaje się, że nic nie działa.


title: jak mogę zrobić rekurencyjne wp_query i działać?

text:
Do tej pory zrobiłem: 1. na stronie z jednym postem mam pudełko z 3 ostatnimi postami, używam WP_Query i resetuję za pomocą wp_reset_postdata(); 2. zrobiłem krótki kod, który wyświetla ostatnie posty, używam WP_Query i resetuję za pomocą wp_reset_postdata(); Problem polega na tym, że gdy używam shortcode w pojedynczym poście, a nie na stronie, rujnuje to pudełko z 3 ostatnimi postami i pokazuje posty, które nie są „3 najnowszymi postami”. Myślę, że gdy pole na pojedynczej stronie próbuje sprawdzić posty, a jeden z nich zawiera krótki kod, zrujnuje zapytanie za pomocą wp_reset_postdata()... ..jakaś sugestia? Zapytanie o krótki kod: global $post; $atts = extract( shortcode_atts( array( 'title' => '' ), $atts, 'shortcode_name')); $args = array( 'post__not_in' => array($post->ID), 'showposts'=> $items, 'post_status' => 'publish', 'ignore_sticky_posts' => 1, ); $my_query = nowe WP_Query($args); if( $my_query->have_posts() ) { $html .= '
'; if( $title != '' ){ $html .= '
'.$title.'
'; } $html .= '
'; while ($my_query->have_posts()) { $my_query->the_post(); $html .= '
'; if( get_the_title() != '' ){ $html .= '
'; if( has_post_thumbnail() ) { $html .= get_the_post_thumbnail( $post->ID, 'thumbnail' ); } $html .= '
'; $html .= '

' . ag_short_title(get_the_title()) . '

'.get_the_time('F j, Y').'

'; } $html .= '
'; } $html .= '

'; } wp_reset_postdata();


title: importowanie wtyczki z ustawieniami z jednej instalacji WP do innej

text: Czy istnieje sposób na importowanie wtyczek (i ich ustawień) z jednej instalacji WP do drugiej? Znalazłem różne narzędzia i samouczki do eksportowania / importowania całych instalacji WP, postów i stron itp., Ale nic dla wtyczek i ustawień wtyczek.


title: Dodanie trzeciego poziomu w niestandardowym chodziku

text:
obecnie mój niestandardowy chodzik działa świetnie :) ale mogę do końca życia uzyskać 3 poziom, aby się pojawił... Mogę uzyskać najwyższy poziom i 2 poziom rozwijany, aby pokazać się idealnie, ale jak osiągnąć 3 poziom. Oto niestandardowy walker, którego używam: //bootstrap navigation class bootWalker extends Walker_Nav_Menu { function check_current( $classes ) { return preg_match('/(current[-_])|active|dropdown/', $classes); } function start_lvl( &$output, $depth = 0, $args = array() ) { $output .= "\n
\n"; } function start_el(&$output, $item, $depth = 0, $args = array(), $id = 0) { $item_html = ''; parent::start_el($item_html, $item, $depth, $args); if( $item->is_dropdown && ($depth === 0) ) { $item_html = str_replace('<a', 'url).'"', $item_html); } elseif( stristr($item_html, 'li class="divider')) ) { $item_html = preg_replace('/]*>.*?<\/a>/iU', '', $item_html ); } elseif( stristr($item_html, 'li class="nav-header')) ) { $item_html = preg_replace('/]*>(.*)<\/a>/iU', '$1', $item_html); } if($depth === 0){ $item_html = str_replace('current_page_item', 'active', $item_html); } $wyjście .= $item_html; } function display_element($element, &$children_elements, $max_depth, $depth = 0, $args, &$output) { $element->is_dropdown = !empty( $children_elements[$element->ID] ); if( $element->is_dropdown ) { if( $depth === 0 ) { $element->classes[] = 'dropdown'; } } parent::display_element($element, $children_elements, $max_depth, $depth, $args, $output); } } Następnie wywołuję go w nagłówku za pomocą następującego:
 <?php if( has_nav_menu( 'podstawowy') ) { wp_nav_menu( array( 'theme_location' => 'primary', 'container' => false, 'menu_class' => 'pigułki nawigacyjne', 'depth' => 3, 'walker' => new bootWalker() ) ); } ?>
  Czy ktoś mógłby mnie wyrwać z nieszczęścia, próbując od kilku dni :( Dzięki


title: Zmodyfikuj stopkę paska bocznego

text: Muszę zaktualizować stronę zrobioną w wordpressie i nie mogę znaleźć sposobu na zmianę "stopki paska bocznego". oto link do strony internetowej: somatbel.be część, którą chcę zmienić, znajduje się tuż pod ostatnią pozycją menu (kontakt), zaczyna się od „contactez nous”. Kiedy sprawdzam tę część za pomocą google chroem, jest napisane „widżet pudełka”. Jestem nowy w wordpressie, zaglądam do widżetu, sekcji menu, ale nic tam nie ma.


title: Problem z permalinkami dla niestandardowego typu postu

text: Mam tu mały problem... Kiedy używam domyślnych permalinków, wszystko działa świetnie, ale kiedy konfiguruję > %postname% permalink w ustawieniach, mój szablon z niestandardowym typem postu nie jest ładowany. Zamiast tego ładuje plik archive.php. Na innej stronie są prace. W tej witrynie z szablonem, w którym używam niestandardowego typu postu, mam frontonowy system edycji postów i korzystam z wtyczki Posty przesłane przez użytkownika. Ta wtyczka nie obsługuje niestandardowych typów postów, więc wprowadziłem niewielką zmianę w kodzie $postData['post_type'] = 'link'; // tutaj dodajemy niestandardowe pole do tablicy $postData, które działa dobrze z typem postu. Czytałem o tym tutaj, więc użyłem go, a potem użyłem klasycznego zapytania dla typów postów w moim szablonie. Nie mam pojęcia, dlaczego ładny link bezpośredni nie działa na tej stronie. Jakieś sugestie, dlaczego to nie działa?


title: Wyłącz html w niestandardowych typach postów

text: Mój webstie ma utworzony niestandardowy typ posta, a teraz chcę wyłączyć użycie dowolnego tagu html w edytorze treści, aby tylko zwykły tekst był zapisywany w bazie danych (i usunąć edytor treści i edytor html, jeśli to możliwe). Znalazłem funkcje do usuwania (rich) edytora treści: add_filter('user_can_richedit' , create_function('' , 'return false;') , 50); I pozostał edytor HTML. Ale nawet jeśli uda mi się usunąć edytor HTML (ten: http://prntscr.com/26uj6u ), użytkownicy będą mogli po prostu wpisać tagi html i zostaną one zapisane w bazie danych. Czy ktoś może mi w tym pomóc?


title: Próba wykluczenia postów z kategorii na stronie głównej

text: Wypróbowałem poniższy kod, aby pobrać identyfikator kota dla jednej z moich kategorii (watch-isatv) i wykluczyć wszystkie posty z tej kategorii. Jednak posty nie są wykluczone. Co jest nie tak z kodem? function excludeCat($query) { if ( $query->is_home ) { $catid = get_cat_ID('watch-isatv'); $query->set('kot', '-'.$catid); } return $zapytanie; } add_filter('pre_get_posts', 'excludeCat');


title: Jak włączyć tag <br /> w postach i stronach Wordpress?

text: nie rozumiem, dlaczego tak proste funkcje zostały wyłączone przez zespół Wordpress. Chcę mieć łamanie linii z tagiem "br". Na jednym forum wordpress pojawił się pomysł modyfikacji plików editor.js (w wp-admin/js) oraz formating.php (wp-includes). http://wordpress.org/support/topic/ltbrgt-stripping-problem-ultimate-solving Próbowałem to zrobić, ale 0 dobrych wyników.


title: Modyfikacja motywu dla menu kategorii niestandardowych

text:
Moim celem jest posiadanie niestandardowego menu w nagłówku na podstawie kategorii oglądanego posta. Tworzę jedną witrynę wordpress, która będzie zawierać około pół tuzina różnych kategorii. Każda kategoria będzie podręcznikiem, za którego utrzymanie jestem odpowiedzialny. Postrzegam wordpress jako znacznie lepszą metodę dostarczania tych treści niż drukowane podręczniki lub po prostu pobrane pliki PDF. Na podstawie wątku znalezionego pod adresem: http://wordpress.org/support/topic/custom-menusheaders-for-different-categories (szczególnie czwarty post) Zmieniłem plik header.php w moim folderze motywów, zastępując następujący kod: <?php wp_nav_menu( array( 'theme_location' => 'primary', 'menu_class' => 'nav-menu' ) ); ?> tym kodem: <?php $cat = get_the_category(); $catSlug = $cat[0]->ślimak; $catMenu = $catSlug . "-nav-menu"; wp_nav_menu(array( 'container'=>'nav', 'container_class'=>'menu-header', 'theme_location'=>'podstawowy', 'menu'=>'{$catMenu}' ) ); ?> Stworzyłem własne menu, które mają nazwy pasujące do kategorii slug, po której następuje "-nav-menu". Na przykład kategoria Podręcznik pracownika zawiera fragment podręcznika pracownika i specyficzne menu nawigacyjne podręcznika pracownika-menu nawigacyjnego. Mogę wyświetlić $catMenu i wyświetli dokładnie to, czego oczekiwałbym. Menu nawigacyjne w nagłówku jest jednak domyślnym menu nawigacyjnym, a nie tym specyficznym dla kategorii. Czy ktoś ma sugestię, dlaczego moje wywołanie wp_nav_menu nie działa tak, jak oczekiwałem? Jeśli ktoś mógłby wskazać mi właściwy kierunek do osiągnięcia mojego celu, bardzo bym to docenił. Dziękuję Ci bardzo. Zgodnie z żądaniem w pierwszym komentarzu, oto dane wyjściowe znalezione w źródle widoku:  <button class="menu- toggle">Menu główne</button> Przejdź do treści

Podręcznik operacji lotniczych

Podręcznik standaryzacji

Stoisko ard Procedury operacyjne Wzmacniacz

  Edytuj: Znaleziono rozwiązanie. Nie potrzebujesz ani pojedynczych cudzysłowów, ani nawiasów klamrowych wokół zmiennej w wywołaniu wp_nav_menu. Przykład poniżej: <?php $cat = get_the_category(); $catSlug = $cat[0]->ślimak; $catMenu = $catSlug . "-nav-menu"; $options = array( 'container'=>'nav', 'container_class'=>'menu-header', 'theme_location'=>'primary', 'menu'=>$catMenu ); wp_nav_menu($opcje); ?>


title: Menu nawigacyjne wszystkich postów w niestandardowym typie postów

text: Jak mogę utworzyć nav, taką jak te generowane przez wp_nav_menu, która wyświetla wszystkie posty w określonym niestandardowym typie postu? Na przykład mam CPT „sekcja1” i chciałbym mieć w menu listę wszystkich postów typu „sekcja1”. Przeszukuję internet od trzech dni bez odpowiedzi. Czy ktoś może wskazać mi właściwy kierunek? Zgubiłem się tutaj, pomóż!


title: używanie pre_get_posts do wykluczenia

text: Próbuję użyć pre_get_posts, aby wykluczyć kategorie z publikowania na stronie głównej. Jeśli zrobię to tak, to działa dobrze $query->set( 'cat', '-13,-7,-19,-12,-24,-21,-14'); to jest na stałe zakodowane. Tworzę niestandardowego administratora, który wyświetla kategorie w menu administratora. Więc teraz chcę użyć identyfikatorów, które zostały wybrane w menu administratora. Więc przypisałem swoje identyfikatory do zmiennej i kiedy var_dump zmienną, to otrzymuję string(2) "13" string(1) "7" string(2) "19" string(2) "12" string (2) "24" string(2) "21" string(2) "14" Czyli wszystkie są przypisane do zmiennej $category i pomyślałem, że mogę to zrobić $category = get_option( 'excludecats' ); foreach( $category as $exclude ){ $query->set( 'cat', '-'.$exclude ); } kiedy przeglądam źródło, spodziewam się, że pojawi się 1987 wierszy kodu, ale to, co kończę, to 3117 wierszy kodu, które próbują użyć foreach, aby je wykluczyć. Co ja robię źle?


title: wpdb->insert i stripslashes przeciwko wstrzykiwaniu sql

text: Czytałem kodeks na tej stronie: http://codex.wordpress.org/Function_Reference/stripslashes_deep Kod, który napisałem przed przeczytaniem tej strony, to: $data = array( 'col1' => $v['float '], 'col2' => stripslashes($v['string']) ); $format = tablica( '%f', '%s' ); $wpdb->insert( 'tabela', $dane, $format ); Zasadniczo ręcznie przekazuję wartości stripslashowane w tablicy $data. Czy ten kod jest poprawny i bezpieczny, czy też powinienem wykonać `$_REQUEST = array_map( 'stripslashes_deep', $_REQUEST );`? Czy jest jakaś ważna różnica, czy to ta sama?


title: Galeria hierarchiczna

text: Chcę kilka galerii, każda galeria zawiera kilka zdjęć. Jaki jest właściwy sposób wykonania tej dwupoziomowej struktury? Z każdego elementu każdej galerii zrobiłbym post.


title: Fragment dotyczący automatyzacji

text: Staram się `zautomatyzować` pracę edytorów poprzez automatyzację `fragmentów`. Moje rozwiązanie działa, ale jest z nim kilka problemów: 1. Jeśli post ma na początku obrazy/uszkodzony html, to psuje układ. 2. Podciąg tnie słowa. Czy istnieje lepsze rozwiązanie, aby zautomatyzować fragmenty lub ulepszyć mój istniejący kod? <?php if(!empty($post->post_excerpt)) { the_excerpt(); } else { echo "<p>".substr(get_the_content(), 0, 160)."...</p>"; } ?>


title: Strona WP i podkatalog o tej samej nazwie

text: Mam podkatalog w mojej instalacji WP o nazwie `labs`. Stworzyłem również stronę WP o nazwie `labs`. Gdy użytkownik kliknie „moja_domena.com/labs/”, chcę, aby załadował stronę WP. Ale zamiast tego ładuje listę katalogów `labs`. Przeczytałem kilka sposobów na zrobienie tego, jeśli chcę, aby moja strona WP miała inną nazwę niż nazwa mojego katalogu, ale tak naprawdę tego nie chcę. Na przykład chcę mieć: mojadomena.com/ <-- WP Root mojadomena.com/labs/ <-- Ładna strona WP zawierająca wszystkie moje projekty mojadomena.com/labs/project1/ <-- surowa (tzn. bez WP ) aplikacja internetowa mojadomena.com/labs/project2/ <-- surowa (tj. bez WP) aplikacja internetowa Czy to możliwe? Powinienem również wspomnieć, że WP jest zainstalowany w katalogu głównym `mydomain.com`, więc `/labs/` jest zarówno stroną WP, jak i podkatalogiem, które stworzyłem ręcznie. * * * **Rozwiązanie** : Zmieniłem nazwę folderu `labs` na `projects` i użyłem następującego .htaccess. RewriteEngine On RewriteCond %{REQUEST_URI} labs/(.+)$ RewriteCond %{REQUEST_URI} !labs/(.+)/$ RewriteRule ^labs/(.+)$ http://mydomain.com/labs/$1/ [ L] RewriteRule ^labs/(.+)$ projects/$1 [L] Nie wiem, dlaczego musiałem użyć RewriteRule ^labs/(.+)$ http://mydomain.com/labs/$1 / [L] zamiast po prostu RewriteRule ^labs/(.+)$ labs/$1/ [L] Ale kiedy używałem tego ostatniego, nigdy nie dodawał końcowego ukośnika.


title: Miniatury postów w wielu rozmiarach

text: Pracuję nad motywem, który pokazuje miniaturę posta 200/200px na stronie głównej i obraz 500/300px na stronie kategorii. Oto, co mam w fuctions.php, ale wydaje się, że nie działa (działa tylko miniatura strony głównej) add_theme_support( 'post-miniaturki' ); set_post_thumbnail_size( 200, 200, prawda ); add_image_size( 'strona główna', 200, 200, prawda ); add_image_size( 'kategoria', 500, 300, prawda );


title: Wyświetlać posty z kategorii w treści posta?

text: Zajmuję się tworzeniem strony internetowej w systemie WordPress. Ponieważ nie chcę paska bocznego, usunąłem „get_sidebar()” z mojej strony. Ale muszę umieścić kategorię w części treści (jak kategorię dla najnowszych wiadomości) - nie na pasku bocznym. Jak mogłem to zrobić?


title: odpowiednik wp_reset_query dla WP Ecommerce

text: Mam problemy z duplikacją produktów podczas uruchamiania dwóch pętli na jednej stronie. Czy istnieje odpowiednik wp_reset_query dla wp e-commerce? Możesz zobaczyć witrynę pod adresem http://standingarmed.com/products-page Możesz zobaczyć pętlę tutaj, ponieważ nie została ona poprawnie sformatowana na stronie. Jak widać, ustawiłem zmienną, aby pobrać tylko pierwszy produkt. Witryna ma tylko 7 produktów, więc nie pomyślałem, że to będzie wielka sprawa, aby pętla działała 7 razy. Oczywiście wolałbym szukać tylko pierwszego produktu, ale wp e-commerce nie obsługuje zapytań, takich jak WordPress, a przynajmniej to znalazłem. Następnie biegnie do pętli suwaka.


title: Automatyczne odświeżanie wszystkich postów jednocześnie

text: Stworzyłem funkcję zapisywania niestandardowych pól podczas publikowania posta. Coś takiego. function create_fields() { global $post; $casa_id = $post->ID; update_post_meta($post->ID, 'casa_id', $casa_id); } add_action('publish_post', 'create_fields'); Ta funkcja zapisuje w polu niestandardowym jakiś ciąg. **Teraz pytanie** : Jak mogę użyć tej akcji w starszych postach? Mam 1000 postów i nie chcę ręcznie odświeżać wszystkich postów, **czy to możliwe?**


title: Moja pierwsza wtyczka nie zapisuje danych w opcjach

text:
To jest cały mój kod. Nie zapisuje danych, które wprowadzam na stronie ustawień wtyczki. Nie mam pojęcia, dlaczego tak się dzieje! Czy ktoś mógłby mi pomóc? <?php // dodaj stronę opcji administratora add_action('admin_menu', 'plugin_admin_add_page'); function plugin_admin_add_page() { add_options_page( 'Wtyczka dzielenia się przychodami', 'Menu RSP', 'manage_options', 'RSP_plugin', 'RSP_options_page' ); } ?> <?php // wyświetl stronę opcji administratora function RSP_options_page() { ?>

Adsense Revenue Share Plugin
 Ustaw tutaj identyfikator publikacji i pozycję reklamy! <form action="options.php" method="post"> <?php settings_fields('RSP_options'); ?> <?php do_settings_sections('RSP_plugin'); ?> <input name="Prześlij" type="prześlij" value="<?php esc_attr_e('Zapisz zmiany'); ?>" /> </form>
 <?php $options = get_option(' RSP_opcje'); echo '

Aktualne ustawienia

'; echo 'Identyfikator wydawcy AdSense'; echo $opcje['RSP_text_string']; print_r($options) ?> <?php }?> <?php // dodaj ustawienia administratora i takie add_action('admin_init', 'RSP_admin_init'); function RSP_admin_init(){ register_setting( 'RSP_options', 'RSP_options', 'RSP_options_validate' ); add_settings_section('RSP_main', 'Ustawienia główne', 'RSP_section_text', 'RSP_plugin'); add_settings_field( 'RSP_text_string', 'RSP Adsense Pub Id', 'RSP_setting_string', 'RSP_plugin', 'RSP_main' ); } ?> <?php // zatwierdź nasze opcje funkcja RSP_options_validate($input) { $options = get_option('RSP_options'); $options['RSP_text_string'] = trim($input['RSP_text_string']); if(!preg_match('/^[a-z0-9]{32}$/i', $options['RSP_text_string'])) { $options['RSP_text_string'] = ''; } return $opcje; } ?> <?php function RSP_setting_string() { $options = get_option('RSP_options'); echo "<input id='RSP_text_string' name='RSP_options[RSP_text_string]' size='40' type='text' value='{$options['RSP_text_string']}' />"; } ?> <?php function RSP_section_text() { echo '
Tutaj główny opis tej sekcji.
'; } ?>


title: Jak utworzyć alternatywny kanał RSS dla tagów z niestandardowymi rozmiarami obrazów dla MailChimp?

text: Chcę utworzyć alternatywny kanał RSS dla określonej grupy tagów z niestandardowymi rozmiarami obrazu do użycia z MailChimp. Czy można dostosować kanały RSS do określonych tagów? Np. tag „Jabłko” chciałby, aby obrazek w kanale RSS miał rozmiar 100x100, podczas gdy w przypadku tagu „Pomarańczowy” obraz powinien mieć rozmiar 500x500? Używamy tego do biuletynu RSS MailChimp, a MailChimp może pobrać tylko pierwszy obraz w kanale, więc potrzebujemy, aby rozmiar był dokonywany na podstawie tagu i na poziomie kanału, a nie w HTML/CSS.


title: Jak bezpośrednio wywołać funkcję shortcode i przekazać $atts

text:
Używam wtyczki Media Library Categories. Nie ma zbyt wiele dokumentacji, więc doszedłem do wniosku, że sposobem na jej zaimplementowanie będzie użycie shortcode `[mediacategories category="6"]`. Chcę to zaimplementować bezpośrednio w szablonie motywu. Spróbowałem więc: <?php if(function_exists(do_shortcode('[mediacategories category="6"]'))) { ?>
Inspiracja
 <?php do_shortcode('[mediacategories category="6 „]”); } Próbowałem również zaimplementować funkcję bezpośrednio, ale nie mogłem poprawnie przekazać $atts, aby funkcja mogła ich użyć.


title: Prosty i konfigurowalny formularz kontaktowy z możliwością wysłania kopii do zgłaszającego

text: Szukam prostego formularza kontaktowego, który pozwoli na łatwe stylizowanie pól, a co najważniejsze zawiera checkbox do wysłania kopii wiadomości do zgłaszającego (np. ☑ wyślij kopię do mnie) Czy ktoś kogoś zna? Bawiłem się Contact Form 7, ale nie mogłem znaleźć sposobu, aby to zrobić. Dziękuję


title: Komentarz jako post - zrozumienie wp_list_comments

text: Tworzę witrynę, w której centralne pytanie zostanie umieszczone na stronie głównej z zaczerpniętymi komentarzami pierwszego poziomu, prowadzącymi do strony z pełnym komentarzem pierwszego poziomu, przedstawionym prawie jako post, z zagnieżdżonymi odpowiedziami na ten komentarz poniżej. Dlaczego komentarz jako post? Wydawało się, że to dobry sposób na umożliwienie użytkownikom tworzenia treści bez dostępu do zaplecza. Mam problem z zagnieżdżonymi odpowiedziami na konkretny komentarz. Staram się zachować prostotę i używać funkcji wp tam, gdzie to możliwe. Moje podejście polegało na zbudowaniu tablicy wszystkich odpowiedzi na konkretny komentarz, a następnie przekazaniu tej tablicy do `wp_list_comments`. Które wszystko działa, z wyjątkiem części zagnieżdżonej; wszystkie odpowiedzi są traktowane jako na tym samym poziomie lub poziomie. Oczywiście nie do końca rozumiem, jak działa `wp_list_comments`. Oto moja pętla do tworzenia tablicy wszystkich odpowiedzi na określony komentarz (przekazywanych jako `$_GET[comment_id]`): $my_comments = array(); $args = array( 'type' => 'comment', 'status' => 'approve', 'parent' => $_GET[comment_id], ); $my_comments1 = get_comments($args); if(!empty($my_comments1)) { $my_comments = array_merge($my_comments, $my_comments1); $x=1; $zakończony = fałsz; while(! $finished) { foreach(${'my_comments'.$x} as $my_comment) { if($my_comment->comment_ID) { $args = array( 'type' => 'comment', 'status' = > 'approve', 'parent' => $my_comment->comment_ID, ); $x++; ${'my_comments'.$x} = get_comments($args); if(!empty(${'my_comments'.$x})) { $my_comments = array_merge($my_comments, ${'my_comments'.$x}); } elseif(empty(${'my_comments'.$x})) {$finished = true;} } } } } // if not empty A oto jak wyświetlam: <ol class="commentlist"> <? php wp_list_comments( array( 'style' => 'ol' ), $my_comments); ? zagnieżdżone poniżej.


title: utknąłeś na haczyku add_action do delete_comment - jakieś pomysły?

text: Jestem całkiem nowy w przypadku wtyczek i próbuję uruchomić funkcję podczas usuwania komentarza. Pociąga to za sobą podpięcie się pod „delete_comment”, jeśli się nie mylę. http://hitchhackerguide.com/2011/02/12/wp_delete_comment/ Teoretycznie powinno to działać jako wtyczka, więc gdy usuniesz komentarz, otrzymasz e-maila. Ale kiedy go instaluję i aktywuję, nic się nie dzieje, gdy usuwam komentarz. Na stałe zakodowałem funkcję e-mail w ajax-actions.php i działa, ale myślę, że chodzi o to, aby wszystkie funkcje znajdowały się w pliku wtyczki, jeśli to możliwe. Czego mi tu brakuje? Czy gdzieś mi brakuje do_action? add_action( 'usuń_komentarz', 'zrób_coś', 10 ,1); function do_something($comment_id) { mail("ja@domena.com", "$comment_id","$comment_id"); } Uwaga: Jeśli wymagam() pliku wtyczki i wywołam do_something() z /wp-admin/includes/ajax-actions.php, to działa... function wp_ajax_delete_comment() { ... if ( isset($_POST[ 'kosz']) && 1 == $_POST['kosz'] ) { if ( 'kosz' == $status ) wp_die( time() ); // ROZPOCZNIJ WSTAWIANIE require_once( plugin-file.php' ); zrób_coś($komentarz->identyfikator_komentarza); // TO DZIAŁA DOBRZE // ZAKOŃCZ WSTAWIANIE $r = wp_trash_comment( $comment->comment_ID ); } comment_to_post($comment->comment_ID); ... } Czy wp-admin/includes/ajax-actions.php NIE jest częścią zwykłej instalacji WP i nie jest w zakresie, do którego można się podłączyć?


title: Jak filtrować „post_gallery” po wszystkich innych filtrach/wtyczkach itp?

text: Próbuję nieco przeformatować dane wyjściowe galerii, zmienić domyślne kolumny i ustawienie linków, a także wykluczyć polecany obraz z obrazów galerii. Mogę użyć *add_filter('post_gallery' ...)* w functions.php, ale wydaje się, że nadpisuje to wszelkie poprzednie wywołania tego filtra przez rdzeń i wtyczki. Przykład tego nadpisania na żądanie m0r7if3r: function test1($content, $attr) { return $content.'Test One ';} add_filter('post_gallery', 'test1', 10, 2); function test2($content, $attr) { return $content.'Test Two ';} add_filter('post_gallery', 'test2', 10, 2); Zamiast wyprowadzać oryginalną galerię i dołączać 'Test One' do wyjścia, pierwsza funkcja wyprowadza po prostu 'Test One' samodzielnie. Ciekawe, jeśli zastosuję drugą funkcję, jak powyżej, wyprowadzany jest „Test One Test Two” .. dziwne myślę! Jakiś pomysł dlaczego? Ewentualnie mogę *remove_shortcode('gallery', 'gallery_shortcode')* i dodać własne, ale to również usuwa wszelkie manipulacje przez inne skrypty/wtyczki. Uwaga: wydaje się, że istnieje tutaj przyszłe rozwiązanie, w którym zasugerowano filtr *post_gallery_output*, ale nie mam pojęcia, kiedy zostanie dodany do rdzenia. Nie jestem zaznajomiony z tym, jak i kiedy zostaną dodane łaty takie jak ta sugerowana, więc więcej informacji na ten temat również byłoby pomocne. Więc... jakieś pomysły, jak mogę to teraz osiągnąć? Przede wszystkim moim głównym problemem jest usunięcie prezentowanego obrazu. Mogę na razie filtrować zawartość, aby zmienić kolumnę galerii i typ linku. Dziękuję! Ben


title: Nie możesz pozbyć się opcji „Bezpłatna dostawa” na stronie koszyka w Woocommerce

text: Właśnie dodałem moduł Wysyłka i skonfigurowałem strefy i tabele na podstawie wagi, ale nie mogę pozbyć się przycisku opcji „Darmowa wysyłka” na stronie podsumowania koszyka — nie mogę znaleźć miejsca, w którym można go usunąć!


title: Pobierz wszystkie posty z niestandardowego typu postu i wstaw wybrane dane wejściowe jako metabox

text:
Chciałbym wiedzieć, czy można coś takiego zrobić. Mam niestandardowy typ posta **Slider** i niestandardowy typ posta **Usługi**. Dla postów typu slider utworzyłem metabox dla wartości adresu URL, który będzie wyświetlany obok wszystkich postów typu slider. To, co chciałbym teraz zrobić, to pobrać wszystkie posty z **Typ postów niestandardowych usług** i wyświetlić je w tym metaboxie postu suwaka jako wybrane wejście, abym mógł wybrać, do którego posta powinien przejść link. Z góry dziękuję :) Oto aktualny kod: function rm_display_slider_metabox($post) { wp_nonce_field(basename(__FILE__), 'slider_nonce'); $slide_url_value = get_post_meta($post->ID, '_slide_url', prawda); $slide_url = isset($slide_url_value) ? esc_attr($slide_url_value) : ''; $services_loop = new WP_Query( array( 'post_type' => 'services', 'posts_per_page' => -1, 'post_status' => 'publish' )); ?>

 <?php _e('Wybierz URL z rozwijanej listy poniżej dla tego slajdu', 'rmtheme' ); ?>
 <select name="_slide_url"> <?php while ($services_loop->have_posts()) : $services_loop->the_post(); ?> <option value="<?php the_permalink(); ?>"><?php the_title(); ?></option> <?php endwhile; ?> </select>

 <?php } function rm_save_slider_meta($post) { global $post; if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return $post_id; if (!isset($_POST['slider_nonce']) || !wp_verify_nonce($_POST['slider_nonce'], basename(__FILE__))) return $post_id; if (!current_user_can('edit_post')) return $post_id; $allowed = array( 'a' => array( 'href' => array() ) ); if (isset($_POST['_slide_url'])) update_post_meta($post->ID, '_slide_url', wp_kses($_POST['_slide_url'], $allowed)); } add_action('save_post', 'rm_save_slider_meta'); add_action('add_meta_boxes', 'rm_slider_metabox');


title: Responsywne wideo Wordpress Core nie działa z shortcode

text:
Nie mogę uzyskać responsywnego działania wideo z rdzenia Wordpress. Używam następującego CSS: .videocontent { width: 100%; wzrost: 100%; maksymalna szerokość: 1024px; margines: 0 auto; } .wp-video-shortcode { maksymalna szerokość: 100%; } Poniższy kod HTML używający shortcode nie jest skalowany do pełnego rozmiaru zawierającego div:
 <?php echo do_shortcode('[video webm="http://localhost/dnp/stalker. webm" szerokość=100%]'); ?>
 Ale używanie bezpośrednio HTML działa dobrze:
 <video id="mojfilm2" style="width:90%;height:100%;" control="controls"> <source src="http://localhost/dnp/stalker.webm" type="video/webm"/> </video>
 Próbowałem różnych ustawień za pomocą shortcode - takich jako wysokość 100%, wysokość i szerokość 100% oraz szerokość 100%. Co ja robię źle? Zrzut ekranu -> zrzut ekranu Strona na żywo: http://www.deekwa.com/dnp


title: Dlaczego w mojej niestandardowej tabeli bazy danych jest wartość zero?

text: Pracuję nad zadaniem, w którym muszę wstawić klienta do tabeli bazy danych w WordPressie. Jest to niestandardowa tabela, więc użyłem pliku szablonu i zastosowałem `wp_query`. Pozostałe dane trafiają do tabeli we właściwy sposób, ale wartość `book_ref` to zawsze `0`. Przypisałem typ danych `varchar` dla `book_ref`. Utworzyłem łańcuch z dwóch łańcuchów, używając `substr` i zapisując go `$ref': $ref=substr($from,0,2).substr($to,0,2); $wpdb->insert( 'customer_info', array( 'post_id' => $q, 'name' => $a,'lname' => $b, 'email' => $c,'mobile' => $ d, 'phone' => $e,'adress' => $g,'accom'=>$f,'v_name'=>$taxi1, 'remark' => $h,'from'=> $from. ''.$flight,'to'=> $do,'t_date'=>$t_date,'pass_num'=>$dorosły,'vehicle_num'=>$texi_no,'total_price'=>$cena,'book_ref'= >$ref,'status'=>$status ), array( '%d', '%s','%s', '%s' ,'%d', '%s' ,'%s', '%s','%s' ,'%s', '%s','%s' ,'%s', '%s','%s','%d' ) ); echo $wpdb->last_query; daje następujące dane wyjściowe: (`post_id`,`name`,`lname`,`email`,`mobile`,`phone`,`address`,`accom`,`v_name`,`remark`,`from`, `do`,`t_data`,`pass_num`,`vehicle_num`,`catal_price`,`book_ref`,`status`) WARTOŚCI (0,'Dinesh','Kumar','dinesh@macadamia.co.in', 1234567890, '1122', 'Nowe imperium rynkowe', 'Chd, 22', 'Limuzyna', 'rerer', 'Trapezaki', 'Svoronata','11/22/2013-02:20', '3', '1',300,0,1) gdzie book_ref jest zawsze 0. Masz pojęcie, czego mi brakuje?


title: Uzyskaj posty, terminy i niestandardowe pola w tablicy

text: Mam wiele witryn i chcę, aby wszystkie posty z produktów typu post Chcę przeszukiwać bazę danych, aby uzyskać wszystkie posty należące do „produktów” typu post. Osiągnąłem to za pomocą następującego kodu http://pastebin.com/0qFJmW4R Ale mogę Nie rozumiem warunków tych postów, wiem, że są w innej tabeli, ale nie wiem, jak je umieścić w tablicy. Muszę też uzyskać pola niestandardowe należące do tego posta. Czy ktoś może mi w tym pomóc?


title: Usuwanie paska administracyjnego z pulpitu Wordpress

text: Używam wordpress multiste 3.3.1. Nie zamierzam go aktualizować w przyszłości. Więc wyłączyłem wszystkie funkcje aktualizacji. Chcę usunąć pasek administracyjny wordpress zarówno z frontendu, jak iz pulpitu nawigacyjnego. Mogę usunąć go z frontendu za pomocą tego kodu. add_action( 'init', 'disable_admin_bar', 1 ); function disable_admin_bar() { add_filter( 'show_admin_bar', '__return_false' ); } Ale nie mogłem znaleźć żadnego rozwiązania, aby usunąć go z pulpitu nawigacyjnego. **Nie chcę używać rozwiązania css do ukrywania paska administracyjnego i jestem gotowy do edycji podstawowych plików, aby go usunąć** Czy ktoś może mi pomóc w całkowitym usunięciu?. Dziękuję


title: Niestandardowa struktura permalink WP

text: Od kilku godzin zmagam się z tym problemem. Zasadniczo próbuję uzyskać taką strukturę adresów URL dla witryny z kuponami, którą prowadzę. `http://www.mysite.com/store/walmart/coupon-1` Każdy kupon jest postem WP, a jego domyślną strukturą jest teraz. `http://www.mysite.com/coupon-1` Tekst `store` jest statyczny i gdyby był to jedyny prefiks, którego potrzebowałem do kuponu, mógłbym łatwo przejść do Ustawienia -> Permalink i ustawić coś takiego `/ store/%postname%/` ale ponieważ nazwa sklepu jest dynamiczna... cóż, widzisz mój problem. Zacząłem podchodzić do problemu, robiąc to, co wiem i używając RewriteRule w .htaccess (np. `RewriteRule ^store/(.*)/(.*)$ $2 [R=301,L]`), ale to nie dał mi właściwego wyniku, po prostu przekierowałby do oryginalnej struktury adresu URL. Znalazłem kilka artykułów na ten temat, ale są one albo słabo wyjaśnione, albo po prostu odnoszą się do prostego przekierowania. Czy ktoś może rzucić na to trochę światła?


title: zwróć niesformatowaną zawartość w kodowaniu shortcode

text:
Napisałem mały krótki kod, postępując zgodnie z podstawowymi instrukcjami na Wordpress Codex: function myshortcode( $atts, $content = null ) { extract( shortcode_atts( array( ..., ), $atts ) ); zwróć some_html _code_tutaj . $treść; } Kiedy umieszczam [myshortcode] to jest treść testowa [/myshortcode] w poście, otrzymuję następujące wyjście: to
 jest

 treścią testową

 Jak mogę uniknąć wstawiania br / tagów?


title: Paginacja w pojedynczym poście

text: Chcę skonfigurować paginację w moim pliku single.php, aby móc poprawnie używać funkcji nieskończonego przewijania. Wiem, że paginację można umieścić w pojedynczym poście, ale jakoś muszę sprawić, aby strona single.php mogła mieć dołączoną zmienną w adresie URL. Mam na myśli to, że jeśli mam ten adres URL: http://www.example.com/post_URL/ Potrzebuję go do działania w ten sposób: http://www.example.com/post_URL/page/2/ działa w ten sposób, ponieważ mam nieskończone przewijanie działające w ten sposób na stronie głównej/głównej stronie bloga i pobiera zmienną get_query_var('strona'), która wydaje się nie istnieć na stronach single.php. Ciągle zapętla pierwszą stronę w nieskończonym zwoju, co wydaje mi się mówić, że po prostu domyślnie przyjmuje wartość „1” w kółko. Czy jest na to sposób? Dzięki za pomoc! ## EDIT Odkryłem, że mogę ręcznie utworzyć zmienną „page”, przechodząc do adresu URL tutaj: http://www.example.com/my-article/2/ Pętla na dole strony traktuje to strona tak, jakby to była strona = 2, mimo że wyświetla się ta sama treść. Moje założenie jest takie, że 2 na końcu strony to zmienna get_query_var(), ale niekoniecznie jest ona traktowana jako taka podczas przewijania pętli/nieskończonego. Więc wiem, że istnieje, ale nie ma do niego dostępu nieskończony zwój. Jak myślisz, jaki jest tego powód? ## EDYCJA Oto kod stronicowania, którego używam na stronie pojedynczego posta dla zapytania (nie używam „strony” zamiast „strony”, tak jak powinno być w jednym poście; próbowałem również „strony” na wszelki wypadek): $paged = get_query_var('paged'); $wp_query = new WP_Query( array( 'post__not_in' => array(get_the_ID()), 'category__not_in' => 9, 'post_type' => 'post', 'post_status' => 'publish', 'posts_per_page' => 3, 'stronicowany' => $stronicowany ) ); Ten kod działa na stronie głównej dla pętli, którą tam mam. Nie działa jednak na stronie single.php. ## EDIT Tak więc cała pomoc była świetna, ale nadal nie rozwiązała całkowicie problemu. Kiedy wypisuję zmienną $paged w adresie URL strony głównej, otrzymuję „0”. Jeśli zrobię to z adresem url z dołączonym /2/, to jest '2' itd. (więc to działa). Więc nie rozpoznaje strony głównej jako strony „1”. To jest z nieskończonym przewijaniem, więc musi być w stanie zaczynać się od 1 i nie jestem pewien, czy jest możliwe, aby nieskończone przewijanie działało na takich stronach z pojedynczymi postami. Masz pojęcie, dlaczego główny adres URL nie ma wartości strony var zapytania równej 1?


title: Pobieranie posta i załączonego obrazu z subdomeny

text: Ostatnio zainstalowałem wordpress jako subdomenę na mojej głównej stronie internetowej. Teraz mam dwie instalacje: www.example.com i www.example.com/store/. Teraz chcę, aby moja domena główna wyświetlała najnowsze posty z subdomeny na pasku bocznym strony głównej. Wszystko czego chcę to: post->url post->title post->thumbnail Uzyskanie adresu URL posta i tytułu było bardzo łatwe dzięki następującemu kodowi " $products = $wpdb->get_results( " SELECT * FROM store_posts WHERE post_status = 'publish' AND post_type = 'post' LIMIT 4" ); Moje obie instalacje WordPressa korzystają z tej samej bazy danych, ale z różnymi prefiksami, a do każdego posta dołączony jest tylko jeden obraz (nie używam funkcji polecanego obrazu, po prostu dołączam obraz do posta) Nie mam pojęcia jak dołączyć i zrobić niestandardowe zapytania. Uprzejmie pomóż w jego odniesieniu.


title: WP_Query - Jak zamówić według daty publikacji nadrzędnej?

text: Używam WP_Query do wyświetlania `'post_type' => 'attachment'` na innej stronie niż posty, na które są przesyłane: $media_args = array( 'post_type' => 'attachment', 'post_status' => 'publish' , 'orderby' => 'date', 'posts_per_page' => 50, 'tax_query' => array( array( 'taxonomy' => 'media-tags', 'field' => 'slug', 'terms' = > $term->slug )) ) ); $media_items = nowe WP_Query($media_args); Problem, z którym się spotykam, polega na tym, że przesyłam nowe zdjęcia do starszego posta. 1. `'orderby' => 'data'` porządkuje wyniki według daty każdego załącznika. 2. `'orderby' => 'rodzic'` porządkuje wyniki według identyfikatora posta rodziców. Ta ostatnia byłaby idealna, gdyby nie fakt, że identyfikatory postów i daty publikacji nie reprezentują tej samej kolejności (planuję wersje robocze w różnych punktach w przyszłości). Czy można zamówić wyniki WP_Query według daty publikacji rodziców załącznika?


title: Porządkowanie danych wyjściowych taksonomii w tej funkcji

text: Znalazłem (wygooglowałem) tę funkcję, która działa prawie dokładnie tak, jak potrzebuję. Tworzenie struktury tekstu linku (okruszki chleba) terminów dla CPT, tj. Kategoria nadrzędna -> Kategoria podrzędna -> Kategoria podrzędna Jedyną kwestią jest kolejność, w której jest to wyprowadzane, jest nieco odmienne - Kategoria podrzędna -> Kategoria nadrzędna -> Wnuki Kategoria Nie mogę zrozumieć z poniższego kodu, jak ją poprawnie zamówić. Wszelkie wskazówki byłyby bardzo mile widziane. Z góry wielkie dzięki rob funkcji get_the_term_list_breadcrumbs( $id = 0, $taksonomii, $before = '', $sep = '', $after = '', $breadcrumb_sep = ' → ' ) { $terms = get_the_terms( $id, $taksonomia ); if ( is_wp_error ( $terms )) return $terms; if ( empty( $terms ) ) zwróć false; foreach ( $terms as $term ) { $link = get_term_link( $term, $taxonomy ); if ( is_wp_error ( $link ) ) return $link; // Znajdź rodziców $names = array(); $ancestors = get_ancestors( $term->term_id, $taksonomia ); if ( count( $ancestors ) > 0 ) { foreach ( $ancestors as $anc ) { $t = get_term( $anc, $taxonomy ); $imiona[] = $t->nazwa; } } $imiona[] = $term->nazwa; $link_text = imploduj( $breadcrumb_sep, $names ); $term_links[] = '' . $link_text . ''; } $term_links = apply_filters( "term_links-$taxonomy", $term_links ); zwróć $przed . dołącz ( $wrz, $term_links ) . $po; }


title: HTML wewnątrz krótkiego kodu przerywa wyjście skróconego kodu

text:
Wiele Google wciąż nie przyniosło rozwiązania. Oto problem: stworzyłem niestandardowy shortcode Wordpress do użycia w moim motywie Thesis. Celem shortcode jest umożliwienie użytkownikom zawijania treści na stronie/postu w znaczniki znaczników schematu. Mój kod jest poniżej: function articlesection_rs_shortcode($atts, $content) { $content = do_shortcode($content); return ''.wpautop($content).''; } add_shortcode('schema_article_section', 'articlesection_rs_shortcode'); Ale tutaj jest problem. Jeśli zawartość między moimi tagami otwierającymi/zamykającymi shortcode nie zawiera elementów HTML, wszystko wygląda dobrze. Jeśli jednak mam jakieś znaczniki HTML w wewnętrznej treści, zamykający `</span>` zostanie umieszczony na samym końcu mojej treści, zamiast tam, gdzie umieściłem zamykający znacznik shortcode. Przykład wizualny: Dane wyjściowe, gdy zawartość wewnątrz shortcode jest zwykłym tekstem: treść testowa Dane wyjściowe, gdy zawartość wewnątrz shortcode jest zawartością HTML:
treść testowa
 .........   Próbowałem użyć `wpautop()` i `wptexturize()`, ale bez powodzenia. Używam Wordpress 3.8.2 i Thesis 1.8.5. Wszelka pomoc, porady, kod lub linki są mile widziane. EDIT: Czy ktoś ma jakieś pomysły?


title: Dlaczego zawsze brakuje jednego posta

text:
W moim niestandardowym zapytaniu za każdym razem, gdy wysyłam zapytanie o posty z określonej kategorii za pomocą WP_Query(), a kategoria ma na przykład posty 10, wydaje mi się, że brakuje mi posta. Zatem zapytanie o 10 postów zwraca tylko 9, zapytanie o 11 postów zwraca tylko 10 i tak dalej. Czy ktoś wie, dlaczego zawsze brakuje mi jednego posta w wynikach zapytania? To kod, którego używam, nie działa. Niektóre z moich innych testów kodu dały te same wyniki. if($carouselOnOff){?>

<?php echo get_cat_name( $carouselCategory ) ?>

 <?php $showPostsInCategory = nowe WP_Query(); $showPostsInCategory->query('cat='. $carouselCategory .'&showposts='. $carouselNumber .''); if ($showPostsInCategory->have_posts()) : while ($showPostsInCategory->have_posts()) : $showPostsInCategory->the_post();?>
 <?php $data = get_post_meta( $post->ID, ' klucz', prawda ); ?> <a href="<?php if ($data[ 'custom_link' ]) { echo $data[ 'custom_link' ];} else { the_permalink(); } ?>"> <?php the_post_thumbnail('sponsor' , array('title' => "")); ?>
 <?php endwhile; endif; ?>

 <?php } ?>


title: Jak zaktualizować user_email na interfejsie w WP 3.3?

text:
Używam następującego kodu i wszystko w profilu użytkownika jest aktualizowane z wyjątkiem adresu e-mail użytkownika. W szablonie: global $current_user, $wp_roles; get_currentuserinfo(); /* Załaduj plik rejestracyjny. */ require_once( ABSPATH . WPINC . '/registration.php' ); /* Jeśli profil został zapisany, zaktualizuj profil. */ if ( 'POST' == $_SERVER['REQUEST_METHOD'] && !empty( $_POST['action'] ) && $_POST['action'] == 'update-user' ) { /* Zaktualizuj hasło użytkownika . */ if ( !empty($_POST['pass1'] ) && !empty( $_POST['pass2'] ) ) { if ( $_POST['pass1'] == $_POST['pass2'] ) wp_update_user( array( 'ID' => $current_user->id, 'user_pass' => esc_attr( $_POST['pass1'] ) ) ); w przeciwnym razie wp_redirect( get_permalink() . '?błąd' ); Wyjście; } /* Aktualizacja informacji o użytkowniku. */ if ( !empty( $_POST['first_name'] ) ) update_user_meta( $current_user->id, 'first_name', esc_attr( $_POST['first_name']) ); if ( !empty( $_POST['last_name'] ) ) update_user_meta($current_user->id, 'last_name', esc_attr( $_POST['last_name']) ); if ( !empty( $_POST['user_email'] ) ) update_user_meta($current_user->id, 'user_email', esc_attr( $_POST['user_email']) ); if ( !empty( $_POST['cell_phone']) ) update_user_meta( $current_user->id, 'cell_phone', esc_attr( $_POST['cell_phone']) ); if ( !empty( $_POST['mailing_address'] ) ) update_user_meta( $current_user->id, 'mailing_address', esc_attr( $_POST['mailing_address']) ); if ( !empty( $_POST['opis']) ) update_user_meta( $current_user->id, 'opis', esc_attr( $_POST['opis']) ); /* Przekieruj, aby strona wyświetlała zaktualizowane informacje. */ if ( !$error ) { wp_redirect( get_permalink() . '?success' ); } else { wp_redirect( get_permalink() . '?error' ); }             Wyjście; } pobierz_nagłówek(); ?> A na stronie: <?php if (stripos($_SERVER['REQUEST_URI'],'?success') !== false) { // TO JEST POCZĄTEK ?>
Twój profil został zaktualizowany pomyślnie.
 <?php } ?> <?php if (stripos($_SERVER['REQUEST_URI'],'?error') !== false) { / / TO JEST POCZĄTEK ?>
Hmm, coś poszło nie tak i Twój profil nie został zaktualizowany.
 <?php } ?> <form method=" post" id="adduser" action="<?php the_permalink(); ?>">

  Imię 	  <input type="text" name="pierwsze_imię" id="pierwsza_nazwa" value="<?php global $bieżący_użytkownik; get_bieżący_użytkownikinfo(); echo $bieżący_użytkownik->pierwsza_nazwa; ?>" />

  Nazwisko 	  <input type="text" name="last_name" id="last_name" value="<?php global $bieżący_użytkownik; get_currentuserinfo(); echo $bieżący_użytkownik->nazwisko; ?>" />

  Adres e-mail 	  <input type="text" name="user_email" id="user_email" value="<?php globalny $bieżący_użytkownik; get_currentuserinfo(); echo $bieżący_użytkownik->użytkownik_e-mail; ?>" />

  Numer telefonu 	  <input type="text" name="cell_phone" id="telefon_komórki" value="<?php global $bieżący_użytkownik; get_currentuserinfo(); echo $bieżący_użytkownik->telefon_komórkowy; ?>" />

  Adres pocztowy 	  <textarea name="adres_pocztowy" id="adres_pocztowy" rows="4" cols="30" class="regular-text"><?php global $current_user; get_currentuserinfo(); echo $current_user->mailing_address; ?></textarea>

  Opis działalności 	  <textarea name="description" id="description" rows="4" cols="30" class=" zwykły-tekst"><?php global $current_user; get_currentuserinfo(); echo $current_user->description; ?></textarea>

 <?php echo $referer; ?> <input name="użytkownik aktualizacji" type="prześlij " id="użytkownik aktualizacji" class="przycisk wyślij" value="użytkownik aktualizacji" /> <?php wp_nonce_field('użytkownik-aktualizacji') ?> <nazwa wejściowa="akcja" type="ukryty" id="akcja " value="Aktualizuj" />
 </form>


title: Jak mogę uzyskać dostęp do moich postów w mojej witrynie Wordpress, teraz straciłem dla niej nazwę domeny?

text: Napisałem kilka postów dla mojej witryny Wordpress, niestety nie mogłem odnowić nazwy domeny na czas, więc chcę uzyskać dostęp do tekstu w tych postach i umieścić go w mojej nowej witrynie, jak mogę to zrobić? Mogę uzyskać dostęp do witryny przez mój cpanel i adres IP witryny i widzę tam pliki WP, ale nie wiem, gdzie są dane postu?


title: Baza kategorii 404 - naprawiono

text: Widziałem już ten problem podczas włamywania się do WordPressa. Podczas próby uzyskania dostępu do **www.example.com/category/** wyświetla mi się strona 404. Czy istnieje sposób na wyświetlenie czegoś przydatnego, takiego jak strona z niestandardowym kodem zamiast strony 404? Potrzebujesz twojej pomocy, aby to rozwiązać, proszę powiedz mi, jeśli coś jest niejasne. Próbowałem dodać tagi kategoria-baza i kategoria-strona, ale to nie zadziałało. Jeśli masz sugestie dotyczące dobrych tagów, poinformuj mnie. Dzięki Anthony


title: Styl Wordpress Niestandardowy typ postu Pojedyncza strona

text: Rejestruję niestandardowy post typu „wydarzenia”. Zdarzenia można wyświetlić za pomocą krótkiego kodu, a po kliknięciu zdarzenia przechodzi się do pojedynczego widoku tego zdarzenia. Teraz chcę, aby ta strona z pojedynczym widokiem miała zupełnie inny styl, używając wszystkich metadanych wydarzenia do tworzenia map, obrazów itp., Ale nie wiem, jak to zrobić. Używanie szablonu dla tego pojedynczego widoku nie wchodzi w grę, ponieważ jest to wtyczka i powinna działać z dowolnym motywem. Samo filtrowanie treści posta nie wystarczy, ponieważ chcę też nadać styl tytułowi. Jakieś pomysły? Z góry dziękuję!


title: Filtruj obrazy WordPress Media Uploader za pomocą menu rozwijanego

text: Poniższy zrzut ekranu jest w zasadzie tym, co chcę zrobić: ![screenshot](http://i.stack.imgur.com/9ZRe8.jpg) Chcę dodać element do listy rozwijanej i po wybraniu tego elementu przefiltruj obrazy które są wyświetlane w bibliotece, więc pochodzą tylko z folderu w mojej wtyczce, który będzie zawierał wybrany zestaw obrazów. Lub, jeśli istnieje jakiś sposób na oznaczanie/oznaczanie obrazów po przesłaniu, aby można je było jakoś przefiltrować dla tej listy. Jestem naprawdę otwarty na wszelkie pomysły na ten temat. Chciałbym pokazać wam trochę kodu, który wypróbowałem, ale dokumentacja programu do przesyłania multimediów WP 3.5 jest tak skąpa, że naprawdę nie jestem pewien, od czego zacząć. Czy możesz podać jakieś wskazówki, jak to zrobić?


title: Zmień kolejność postów administracyjnych w zależności od Meta

text: W moim panelu administracyjnym mam niestandardowy typ postów - z atrybutami strony do zdefiniowania kolejności. Czy istnieje „łatwy” sposób zmiany sposobu, w jaki panel administracyjny pobiera posty, abym mógł zmienić ich kolejność? Atrybuty strony definiują kolejność i rodziców. Mój niestandardowy typ posta nie jest stroną, ale nadal obsługuje atrybuty strony, ponieważ chcę je uporządkować w znaczący sposób. Obecnie w panelu administracyjnym Wordpress, podczas korzystania z niestandardowych typów postów i atrybutów strony, panel administracyjny nie porządkuje postów w zdefiniowanej kolejności, zamiast tego porządkuje wszystkie posty według daty publikacji (więc najnowsze na górze). Chcę użyć atrybutów strony, aby uporządkować moje posty niestandardowego typu postu w panelu administracyjnym w tej samej kolejności określonej przez atrybuty strony. Jeszcze więcej wyjaśnień: Zdefiniowane w `register_post_type()` jako `supports => array()` Found Here ![Pokazuje, gdzie można znaleźć atrybuty strony w Edit CPT](http://i.stack.imgur.com/Ei7cn. jpg) Oczekiwany wynik byłby podobny do tego, gdzie post z atrybutem strony 0 znajduje się na górze, a największy atrybut strony będzie na dole: ![Pokazuje przykład oczekiwanego wyniku z ustawionym zamówieniem.](http ://i.stack.imgur.com/FOX6B.jpg)


title: Dodaj niestandardowy formularz na stronie administratora post-new.php

text: muszę dodać niestandardowy formularz na stronie post-new0.php administratora wordpress. (ten formularz załaduje zewnętrzny skrypt w ajax i wypełni całe pole) Mogę to zrobić za pomocą mojej wtyczki z add_action('admin_print_scripts-post-new.php', 'my_echo_function'); Ale drukuje go na górze strony, jak mogę to zrobić, aby wydrukować go tak, jak pokazuję na obrazku? (tuż nad obszarem tekstowym posta tytułu). nie masz pomysłu? Dziękuję Ci. EDYCJA: może być przed lub po formularzu wp, tutaj drukuję go teraz: ![gdzie jest wydrukowany](http://i.stack.imgur.com/QWFVa.jpg) ![ilustracja](http: //i.stack.imgur.com/g3MNk.jpg)


title: Problem z Wordpress MU i Media Uploader

text: Ok, tutaj trochę dłuższe pytanie: mam WP MU i mam stronę w domenie głównej, z której administratorzy bloga mogą aktualizować/zarządzać swoimi stronami/postami. więc wygląda to tak: www.MainDomain.com/members Na tej stronie sprawdzam czy użytkownik jest administratorem bloga i zbieram potrzebne informacje i robię to: switch_to_blog($userblog_id); wp_enqueue_script('post'); wp_enqueue_media( array( 'post' => $post_id ) ); wp_editor( $post_content, 'post_content', $settings = array(textarea_rows => 15, media_buttons => true) ); $userblog_id to w rzeczywistości identyfikator bloga, do którego przypisany jest użytkownik. $post_id to identyfikator posta edytowanego przez użytkownika na stronie członka. Teraz, gdy administrator bloga kliknie przycisk Prześlij multimedia, wyświetla się wyskakujące okienko przesyłania multimediów, ale galeria multimediów jest zawsze pusta, a gdy administrator próbował coś przesłać, zawsze kończy się niepowodzeniem z tym błędem „Wystąpił błąd podczas przesyłania. Spróbuj ponownie później”. Widziałem, że MainDomain.com/wp-admin/admin-ajax.php jest wywoływana po kliknięciu przycisku Add Media i że odpowiedź json to: {"success":false} Teraz, gdy jestem zalogowany jako superadmin - działa poprawnie. Czy ktoś ma pojęcie, co tu jest nie tak? ## EDYCJA: ..Zapomniałem wspomnieć, kiedy przechodzę do pulpitu nawigacyjnego witryny dla tego bloga i klikam przycisk Dodaj multimedia - odpowiedź admin-ajax.php to: {"wp-auth-check":true,"wp-refresh-post -lock":{"new_lock":"1386087028:4"},"server_time":1386087028} Oczywiście, nawet jeśli jestem zalogowany jako administrator bloga w witrynie głównej - nie jestem uwierzytelniany jako administrator bloga po uruchomieniu żądania ajax na MainDomain.com ? Czy jest w pobliżu praca ?


title: Jak edytować mój motyw na pełną szerokość?

text: Używam Manifest 1.01 Jima Barrauda na mojej stronie www.inteftrust.org. Chciałbym wiedzieć, jak mogę uzyskać pełną szerokość z tym motywem. Dziękuję.


title: Zaktualizowano do najnowszej wersji - 3.0.3 i teraz otrzymuję błąd „wystarczające uprawnienia dostępu do tej strony”

text: Problem pojawił się natychmiast po aktualizacji. Jedyną częścią aplikacji, której to dotyczy, są elementy podmenu w ustawieniach, które odnoszą się do wtyczki. Podstawowe ustawienia aplikacji działają, ale nie wtyczki. Wszystkie wtyczki są aktualne i mają wpływ. Myśli?


title: napisz w functions.php

text: chcę tylko, aby ten kod został dodany w moim functions.php, aby wyświetlał się bezpośrednio po zakończeniu mojego posta obecnie dodaję ten kod do mojego single.php, ale chcę dodać to jest w functions.php, ten kod służy do pobierania wszystkich tweetów z danego konta, kod znajduje się tutaj <?php function parse_twitter_feed($feed, $prefix, $tweetprefix, $tweetsuffix, $suffix) { $feed = str_replace("<", "<" , $pasza); $feed = str_replace(">", ">", $feed); $clean = explode("<content type=\"html\">", $feed); $kwota = liczba($czysty) - 1; echo $przedrostek; for ($i = 1; $i <= $kwota; $i++) { $cleaner = explode("</content>", $clean[$i]); echo $tweetprefix; echo $cleaner[0]; echo $tweetsuffix; } echo $sufiks; } function the_twitter_feed($nazwa_użytkownika) { // $nazwa_użytkownika = "Mba_"; // Twoja nazwa użytkownika na Twitterze. $limit = "5"; // Liczba tweetów do pobrania. /* Te przedrostki i przyrostki będą wyświetlane przed i po całym bloku tweetów. */ $prefiks = ""; // Prefiks - jakiś tekst, który chcesz wyświetlić przed wszystkimi tweetami. $przyrostek = ""; // Sufiks - jakiś tekst, który chcesz wyświetlić po wszystkich twoich tweetach. $tweetprefix = ""; // Prefiks tweeta - jakiś tekst, który chcesz wyświetlić przed każdym tweetem. $tweetsuffix = "<br>"; // Sufiks tweeta - tekst, który chcesz wyświetlić po każdym tweecie. $feed = "http://search.twitter.com/search.atom?q=from:" . $nazwa użytkownika . „&rpp=” . $limit; $twitterFeed = get_transient($feed); if (!$twitterFeed) { $twitterFeed = wp_remote_fopen($feed); set_transient($feed, $twitterFeed, 3600); // cache przez godzinę } if ($twitterFeed) parse_feed($twitterFeed, $prefix, $tweetprefix, $tweetsuffix, $suffix); } ?>


title: Jak zastosować wiele skórek do witryny za pomocą selektora „szablonów” przy użyciu przełączania arkuszy stylów?

text: Po prostu zamoczyłem stopy w szablonach i mam kilka pytań. Po pierwsze, najlepiej byłoby, gdyby moje szablony używały tej samej struktury, co mój główny motyw, jednak po prostu używają innego arkusza stylów i obrazów. Obecnie sposób, w jaki pozwalam na zmianę wyglądu strony, polega na przełączaniu arkuszy stylów. Po prostu mam folder pod moim głównym motywem o nazwie „style”, a pod nim mam jeden folder dla każdej z moich „skórek”. Wewnątrz każdego folderu skórki znajduje się style.css wraz z kilkoma obrazami. Działa to tak, że umieściłem trochę kodu w pliku header.php mojego motywu głównego, aby odczytywał wartość aktualnie aktywnej skórki z bazy danych opcji, a następnie ładował arkusz stylów dla tej skórki w następujący sposób... w powyższym przykładzie aktywną skórką jest "skin1", więc zawsze ładuję... "...mytheme/styles/". get_option('active_skin') "style.css" Działa to wyjątkowo dobrze i pozwala mi umieścić prosty widżet przełączania skór (menu rozwijane z wyświetlaniem miniatur) w moim pliku function.php, aby umożliwić administratorowi łatwe przełączanie się między kilka skórek, które całkowicie zmieniają wygląd i styl witryny. Piękno tego podejścia polega na tym, że wybrany motyw i leżące u jego podstaw znaczniki pozostają niezmienione, dzięki czemu mogę tworzyć różne style przy użyciu przewidywalnych znaczników. Coś jak ogród zen CSS. Ten sam znacznik, tysiące projektów. Wszystko, co się zmienia, to arkusz stylów i obrazy. Jednak jedyną wadą tego podejścia (przynajmniej w przypadku WordPressa) jest to, że wybrana skóra dotyczy całej witryny. Nie mogę zastosować jednej karnacji do strony głównej i jednej karnacji do strony specjalnej, która może wymagać zupełnie innego wyglądu i stylu. Gdyby istniał sposób na dodanie kodu do każdego folderu skórek, tak aby pojawiał się w rozwijanym menu „szablony” w edytorze stron, byłbym w stanie zrobić dokładnie to, co chcę. czy to możliwe?


title: Czy jest dołączony hook do zapisu ustawień ogólnych?

text: Chcę dodać pole do strony ustawień ogólnych, ale nie mogę zapisać pola, ponieważ nie mogę znaleźć haka do zapisywania stron. Jakieś pomysły?


title: Jak skonfigurować subdomenę mobilną za pomocą Multisite

text: Mam konfigurację WordPress 3.8.1 Multisite z subdomenami w porządku, aby zrobić to, czego teraz potrzebuję: 1. www.example.com 2. www.city1.example.com 3. www.city2.example.com Teraz chcę obsługiwać witryna mobilna w subdomenach, takich jak 1. m.example.com 2. m.miasto1.example.com 3. m.miasto2.example.com Mogę używać http://51stopni.com/ lub http://mobiledetect.net/ do wykrywania mobilnego. Jak powinienem skonfigurować WordPressa, aby to zrobić? LUB czy w ogóle można to zrobić za pomocą WordPressa?


Mam kilka tłumaczeń Biblii na język turecki. Ale są jak z książek. (Mateusz, Marek, Łukasz, Jan...) Umieściłem je na stronie internetowej zarządzanej przez oprogramowanie wordpress. http://www.incil.biz/incil-1 http://www.incil.biz/incil-2 Chcę stworzyć wyszukiwarkę Biblii. Ale to są bardzo długie teksty. Jak mogę stworzyć wyszukiwarkę Biblii za pośrednictwem WordPressa? Czy można podzielić księgi na wersety?


title: Typ obszaru tekstowego w jednym polu niestandardowym add_meta_box?

text:
Mam bliskie rozwiązanie tego pytania z tego linku „Jak dodać obszar tekstowy tylko do jednego z pól tego niestandardowego metaboxa?”, ale z innym kodem i używa nowego metaboxa, muszę również zobaczyć wartość w niestandardowych polach, z tego rozwiązania nie widzę na "polu pola niestandardowego". więc używam tego kodu: $sp_boxes = array ( 'Digi Box' => array ( array( 'shortdesc', 'Shortdesc:' ), array( 'url', 'Url:' ), ), ); add_action( 'admin_menu', 'sp_add_custom_box' ); add_action( 'save_post', 'sp_save_postdata', 1, 2 ); funkcja sp_add_custom_box() { globalne $sp_boxes; if ( function_exists( 'add_meta_box' ) ) { foreach ( array_keys( $sp_boxes ) as $box_name ) { add_meta_box( $box_name, __( $box_name, 'sp' ), 'sp_post_custom_box', 'post', 'normal', ' wysoki' ); } } } function sp_post_custom_box ( $obj, $box ) { global $sp_boxes; statyczny $sp_nonce_flag = false; if (! $sp_nonce_flag) { echo_sp_nonce(); $sp_nonce_flaga = prawda; } foreach ( $sp_boxes[$box['id']] as $sp_box ) { echo field_html( $sp_box ); } } function field_html ( $args ) { switch ( $args[2] ) { case 'textarea': return text_area( $args ); case 'pole wyboru': // Sprawa do wykonania 'radio': // Sprawa do wykonania 'text': default: return text_field( $args ); } } function pole_tekstowe ( $args ) { global $post; $args[2] = get_post_meta($post->ID, $args[0], true); $args[1] = __($args[1], 'sp' ); $label_format = '%2$s<input style="float: right; margin: -2px 0 0; szerokość: 88%%;" type="text" name="%1$s" value="%3$s" />

'; return vsprintf( $format_etykiety, $args ); } funkcja sp_save_postdata($post_id, $post) { globalne $sp_boxes; if ( ! wp_verify_nonce( $_POST['sp_nonce_name'], plugin_basename(__FILE__)) ) { return $post->ID; } if ( 'page' == $_POST['post_type'] ) { if ( ! current_user_can( 'edit_page', $post->ID )) return $post->ID; } else { if ( ! current_user_can( 'edit_post', $post->ID )) return $post->ID; } foreach ( $sp_boxes as $sp_box ) { foreach ( $sp_box as $sp_fields ) { $my_data[$sp_fields[0]] = $_POST[$sp_fields[0]]; } } foreach ($my_data as $key => $value) { if ( 'revision' == $post->post_type ) { return; } $wartość = implode(',', (tablica)$wartość); if ( get_post_meta($post->ID, $klucz, FALSE)) { update_post_meta($post->ID, $klucz, $wartość); } else { add_post_meta($post->ID, $klucz, $wartość); } if (!$wartość) { usuń_post_meta($post->ID, $klucz); } } } function echo_sp_nonce () { echo sprintf( '<input type="hidden" name="%1$s" id="%1$s" value="%2$s" />', 'sp_nonce_name' , wp_create_nonce( plugin_basename(__FILE__) ) ); } mam 2 pola: 1.shortdesc 2.url z tym kodem, pokazuje tylko typ danych wejściowych. teraz, jak sprawić, by "shortdesc" był typem textarea? i „url” nadal wpisz typ. Dziękuję. przepraszam za mój angielski.


title: Zapobiegaj filtrowi pre_get_posts dla określonego typu postu

text: Mam jeden problem z filtrem **pre_get_post**. Właściwie mam 4 typy postów. Post, strony, wydarzenia i miejsce. Utworzyłem jedno niestandardowe pole o nazwie miasto dla typu postu o wydarzeniu i miejscu. Podczas tworzenia pola niestandardowego mam jedną opcję wyboru typu posta, na którym chcę wyświetlić to pole niestandardowe. Teraz w części frontendowej dodałem jeden filtr na **pre_get_posts** i zmodyfikowałem główne zapytanie, aby pobrać wszystkie posty z określonego miasta. Wszystkie rzeczy działają idealnie na listach wydarzeń i miejsc oraz na pojedynczej stronie **ale ten filtr dotyczy również postów i stron.** Chcę, aby **Chcę usunąć ten filtr z typu postów, które nie są dołączone do tego pola niestandardowego. Próbowałem z **$wp_query->query_vars['page_id']** tego kodu, ale już nie działa. Czy ktoś może mi pomóc w uporządkowaniu tego naszego? FYI: Mój kod wygląda tak: add_action( 'pre_get_posts', 'citywise_post_filter' ); function citywise_post_filter($query) { global $wp_query; if( isset( $_WNIOSEK['filtr_miasto'] ) ){ $miasto = $_WNIOSEK['filtr_miasto']; }else{ $city = $_SESSION['CURR_CITY']; } if ( !is_admin() ){ $query->set( 'meta_key', '_ct_selectbox_52f65ae267764' ); $query->set( 'meta_value', $city ); zwrócić; } } Dzięki, Aezaz


title: Ucieknij znaki specjalne w linku do obrazu

text: Importuję obrazy z XML za pomocą wtyczki, obcina link do obrazu podczas importowania. Niektóre symbole powodują, że obrazy nie wyświetlają się w postach. To jest link do obrazu. To, co pokazuje, to mydomain.com/wp-content/uploads/2014/03/watermark.jpeg Potrzebuję funkcji php, która unika znaków specjalnych w adresie URL. (Nazwa wtyczki Wordpress: WP-ALLIMPORT)


title: Niestandardowy typ posta nie wyświetla już niczego dodanego przez kod?

text: Więc mam napisany kawałek kodu, który działał wcześniej, nie był edytowany, nie był zmieniany, brak aktualizacji w WP DB, brak aktualizacji jakiejkolwiek wtyczki w WP i nagle nie działa poprawnie. Oto kod: $kolumna1 = "nazwa_członka"; $kolumna2 = "Identyfikator członka"; $ meta_key = "field_dsfsd332dsfd"; $result = $newdb->get_results("WYBIERZ ".$kolumna1.",".$kolumna2."FROM członków LIMIT 1"); if(isset($_POST['submit'])){ foreach ($result as $c) { $postargs = array( 'post_title' => $c->member_name, 'post_status' => 'draft', 'post_type ' => 'bedrijf' ); $ thissid = wp_insert_post ( $ postargs, prawda); if ( is_wp_error($thisid)) { return get_error_codes(); } else { update_field( $meta_key, $c->memberID, $thisid); } } } Tak więc kod jest wstawiany do mojego niestandardowego typu posta z innej bazy danych, w wyniku czego zobaczysz tam nowy post i wypełnione pole tytuł+niestandardowy post. Błędem jest to, że wstawia go do bazy danych WP (jak pokazuje w widoku postów jako Wszystkie (3), jeśli na przykład wstawiono 3), ale w ogóle nie wyświetla się jako edytowalny w WP-Admin! Chociaż kiedy ręcznie dodaję post do typu Custom Post, na przykład klikając „Dodaj nowy”, pokazuje to doskonale, a także zmienia się we Wszystkie (4), ale pokazuje tylko jeden (ten, który stworzyłem ręcznie). Dlaczego to się dzieje? GŁÓWNA EDYCJA: Dowiedziałem się, że zmiana na wersję roboczą powoduje, że problem w ogóle się nie pojawia. Nie mam pojęcia, dlaczego tak jest i byłbym wdzięczny za wyjaśnienie, ale na razie współpracuje z `Publish`. EDIT2: Więc rozwiązałem to, pisząc „szkic” z wielkimi literami D, więc „szkic” działa tylko… (Dziwne, powinno działać bez obu).


title: Jak określić, do którego zarejestrowanego obszaru paska bocznego załadowany jest niestandardowy widżet?

text:
Mam niestandardowy widżet, do którego chcę zastosować logikę warunkową, w zależności od zarejestrowanego identyfikatora jego nadrzędnego paska bocznego. Na przykład mój motyw ma 6 zarejestrowanych obszarów widżetów paska bocznego. Mam niestandardowy widżet, który można załadować do dowolnego z tych 6 obszarów widżetów paska bocznego. Czy istnieje sposób na zapisanie poniższego kodu widżetu w celu określenia, czy widżet jest załadowany do jednego lub kilku zarejestrowanych obszarów widżetów paska bocznego? Na przykład rejestruję obszary widżetów paska bocznego, takie jak: register_sidebar(array( 'name' => 'Footer Area One', 'id' => 'home-footer-widget', 'description' => __( ' Pojawia się tuż nad głównym obszarem stopki. Obejmuje całą szerokość strony'), 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '
', 'after_title' => '
', )); register_sidebar(array( 'name' => 'Stopka druga', 'id' => 'footer-two', 'description' => __( 'Pojawia się tuż nad głównym obszarem stopki. Rozciąga się na całą szerokość strony' ), 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '
', 'after_title' => '
', )); I mam niestandardowy widżet, który ma następujący kod: function widget( $args, $instance ) { extract($args); $title = apply_filters( 'widget_title', empty($instance['title']) ? '' : $instance['title'], $instance ); $text = zastosuj_filtry( 'widget_text', $instance['text'], $instance ); $hide_title = isset( $instance['hide_title']) ? $instance['hide_title'] : fałsz; $filtr = isset( $instance['filter'] ) ? $instancja['filtr'] : fałsz; echo $before_widget; if ( $title && !$hide_title )echo $before_title . $tytuł . $po_tytule; if ( $text ) echo $filter ? wpautop($tekst) : $tekst; echo $after_widget; } Chcę umieścić kod w funkcji widget(), który określa, czy widget znajduje się w jednym z dwóch wymienionych powyżej widżetów paska bocznego. Jeśli zdarzy się, że znajduje się na jednym z tych dwóch nazwanych pasków bocznych, w takim przypadku nie powtórzę kodu widżetu przed/po.


title: Tworzenie i wypełnianie niestandardowego menu nawigacyjnego (nie działa pozycja menu)

text: Automatycznie tworzę strony z poniższym kodem, po czym tworzę niestandardowe menu i wstawiam wszystkie strony do tego menu. $create_pages = array('Strona główna', 'O', 'Kontakt'); // będzie więcej elementów $count = 1; foreach ($create_pages as $nowa_strona) { $add_pages = array( 'post_title' => $nowa_strona, 'post_content' => '', 'post_status' => 'publish', 'post_type' => 'page', 'menu_order ' => $count++ // zwiększenie wartości zamówienia w celu nadpisania domyślnej kolejności alfabetycznej ); $page_id = wp_insert_post($add_pages); } Do tej pory udało mi się faktycznie nadpisać domyślną kolejność alfabetyczną, a teraz na ekranie Strony wszystkie strony są uporządkowane tak, jak chcę. $main_nav_id = wp_create_nav_menu('Menu główne', array('slug' => 'main-nav')); set_theme_mod('nav_menu_locations', array('main-nav' => $main_nav_id)); $strony = get_pages(); $liczba = 1; foreach($pages as $page) { $item = array( 'menu-item-object-id' => $page->ID, 'menu-item-object' => 'strona', 'menu-item-type ' => 'post_type', 'menu-item-status' => 'publish', 'menu-item-position' => $count++ // próbuję użyć tego samego podejścia ); wp_update_nav_menu_item ($main_nav_id, 0, $item); } Więc w tym kodzie próbuję użyć tego samego podejścia, co wcześniej ze stronami, ale bez względu na to, co spróbuję, pozycje menu nadal są uporządkowane w dziwny sposób, chcę tylko, aby były uporządkowane w ten sam sposób, w jaki są uporządkowane na ekranie Strony. Jak mogę to naprawić?


title: $html jest pusty po wyrzuceniu samochodu

text:
Natknąłem się więc na dziwaczny problem, w którym wiem, że działa tak, jak się spodziewam pod względem wartości tablicy, ale zmienna _html zwraca coś w rodzaju string(29) " ", co według mojej wiedzy oznacza 29 spacji, ponieważ spacje liczyć jako znaki (proszę mnie poprawić). Tak czy inaczej, klasa: <?php class AisisCore_Template_Helpers_Loop{ protected $_options; chronione $_wp_query; chroniony $_html = ''; funkcja publiczna __construct($options = array()){ global $wp_query; if(isset($opcje)){ $this->_options = $opcje; } if(null === $this->_wp_query){ $this->_wp_query = $wp_query; } } public function init(){} public function loop(){ if(isset($this->_options)){ if(isset($this->_options['query'])){ $this->_query_post( $this->_options['zapytanie']); }elseif(isset($this->_options['type']) && $this->_options['type'] == 'single'){ $this->_single_post(); }else{ $this->_general_wordpress_loop(); } }else{ $this->_general_wordpress_loop(); } } funkcja chroniona _general_wordpress_loop(){ if($this->_wp_query->have_posts()){ while($this->_wp_query->have_posts()){ $this->_wp_query->the_post(); wyciąg_(); } } } funkcja chroniona _query_post($query){ $empty_query = $this->_wp_query; $wp_query = nowe WP_Query ($zapytanie); if($wp_query->have_posts()){ while($wp_query->have_posts()){ $wp_query->the_post(); wyciąg_(); } } next_posts_link('«Starsze wpisy'); previous_posts_link('Nowsze wpisy »'); $wp_query = $puste_zapytanie; } protected function _single_post(){ if($this->_wp_query->have_posts()){ while($this->_wp_query->have_posts()){ $this->_wp_query->the_post(); if(isset($this->_options['wrapper'])){ $this->_html .= '
_options['wrapper']['class'])){ $this->_html .= 'class="'.$this->_options['wrapper']['class'] .'"'; }elseif(isset($this->_options['wrapper']['id'])){ $this->_html .= 'class="'.$this->_options['wrapper']['id' ]'"'; } $this->_html .= ' >'; } if(isset($this->_options['title_header'])){ $this->_html .= '<'.$this->_options['title_header'].'>'; tytuł(); $this->_html .= '</'.$this->_options['title_header'].'>'; }jeszcze{ tytuł_(); } $this->_html .= ''.the_author_meta('display_name').''; data_data(); if(isset($this->_options['image'])){ if(isset($this->_options['size']) && isset($this->_options['args'])){ the_post_thumbnail( $this->_options['image']['size'], $this->_options['image']['args']); }else{ the_post_thumbnail('medium'); }                     }                          Zawartość(); if(isset($this->_options['wrapper'])){ $this->_html .= '
'; } } } } } Funkcja, na której należy się skupić, to funkcja _single_post(). Aby utworzyć i użyć tej klasy, robimy co następuje: $array = array( 'wrapper' => array( 'class' => 'span12' ), 'title_header' => 'h1', 'image' => array( ' size' => 'typ', 'args' => array( 'align' => 'centered', 'class' => 'thumbnail marginBottom20 marginTop20' ) ), 'type' => 'single' ); $pętla = nowa AisisCore_Template_Helpers_Loop($tablica); $pętla->pętla(); Jak widać, ustawiamy wrapper div, title_header, atrybuty obrazu i typ single. Problem polega na tym, że dostaję się do każdej instrukcji _if, w której jestem jak, jeśli jest to opakowanie, a klucz klasy jest ustawiony na wartość .. _, ale $this->_html zwraca puste. kiedy var_dump($this->_html); Dostaję pusty ciąg. Ktoś może zapytać „czy wchodzisz w to, gdzie robisz $this->_html .= 'trochę treści'; ? a odpowiedź brzmi: tak, jestem, jakkolwiek ciąg wydaje się pusty. więc zwracam się do was, aby pomóc mi zobaczyć, co Robię to źle.Próbowałem spojrzeć na źródło, aby sprawdzić, czy może jestem szalony, ale niestety nie jestem, nie ma tagów h1, tagów wrappera ani czegokolwiek innego - jednak według zrzutów var _options, jego wszystko gotowe i gotowe do pracy.


title: Jak ustawić obraz miniatury posta bez tworzenia polecanego obrazu?

text: Kiedy ustawiam polecany obraz, zawsze znajduje się on w lewym górnym rogu postu. Czasami, jak w tym przykładowym poście, mam bardzo mało tekstu i jeden obraz. Ale ten obraz nie powinien znajdować się w lewym górnym rogu postu. Czy jest jakiś sposób, jak mogę umieścić ten mały obraz miniatury w przeglądzie tagów / przeglądzie kategorii, nie mając go w poście? Czy mogę powiedzieć wordpressowi, że obrazek w środku posta jest polecanym obrazem?


title: Czy można mieć jedną stronę z wieloma elementami lub 2 blogi w witrynie?

text: Mam stronę w mojej witrynie, której używam jako bloga. A potem jest kolejna strona, do której chciałbym dodać kilka różnych postów. To właściwie nie jest blog, to lista projektów, a każdy z nich będzie miał około 300 słów opisu. Chciałbym, aby użytkownicy mogli wybrać projekt, który chcą wyświetlić. Może to więc działać jako blog lub jako rozwijane menu z pozycji menu „inne projekty”, a może w inny sposób. -- Skoro mam już bloga w witrynie, czy mogę dodać kolejnego bloga w innej pozycji menu? -- A może istnieje inny sposób osiągnięcia celu, na przykład utworzenie menu rozwijanego „inne projekty”? Aktualny blog jest tutaj: http://richardclunan.com/blog A strona, na której chciałbym umieścić listę projektów, jest tutaj: http://richardclunan.com/other-projects


title: Podświetlanie składni na blogu wordpress.com

text: Chcę pisać kod na moim blogu wordpress. który jest hostowany w wordpress.com. Potrzebuję wyróżnienia składni, aby pokazać kod. Czy mogę skonfigurować/dodać wtyczkę w panelu konfiguracyjnym wordpress.com? czy potrzebuję własnego bloga?


title: Jaka wtyczka pozwoli mi przekierować błędy 404 na konkretną stronę?

text: Jaka wtyczka pozwoli mi przekierować błędy 404 na konkretną stronę WP... i śledzić wszystkie błędy 404? Chciałbym po prostu użyć wtyczki, która przekieruje bez konieczności edytowania szablonów i tym podobnych.