title: [Wtyczka: Posty 2 Posty] Jak to działa?

text:
Niedawno odkryłem wtyczkę Scribu's Posts 2 Posts, która wydaje się być dokładnie tym, czego szukałem, aby połączyć strony i posty w dużej witrynie redakcyjnej. Ale nie mogę go zmusić, co jest frustrujące, ponieważ zasada wydaje się naprawdę prosta. Poszedłem za przykładem podstawowego użycia wiki, w moim functions.php mam: function moje_typy_połączenia() { if ( !function_exists( 'p2p_register_connection_type' ) ) return; p2p_register_connection_type( array( 'z' => 'post', 'do' => 'strona') ); } add_action( 'init', 'my_connection_types', 100 ); A w page.php : $connected = new WP_Query( array( 'post_type' => 'post', 'connected_from' => get_queried_object_id() ) ); echo '
Powiązane posty:
'; echo '
'; while( $connected->have_posts() ) : $connected->the_post(); echo '
'; tytuł(); echo '
'; koniec; echo '
'; wp_reset_postdata(); Mam post o nazwie "Tacos", który połączyłem ze stroną "O". Kiedy przechodzę do strony "O mnie", widzę "Powiązane posty:", ale nic więcej po tym (np. gdzie jest moje Taco?) `print_r( $connected )` daje następujące: Obiekt WP_Query ( [query_vars] => Tablica ( [post_type] => post [connected_from] => 2 [błąd] => [m] => 0 [p] => 0 [post_parent] => [subpost] => [subpost_id] => [załącznik ] => [id_załącznika] => 0 [nazwa] => [statyczny] => [nazwa strony] => [id_strony] => 0 [sekunda] => [minuta] => [godzina] => [dzień] => 0 [numer miesiąca] => 0 [rok] => 0 [w] => 0 [nazwa_kategorii] => [tag] => [kot] => [identyfikator_tagu] => [imię_autora] => [kanał] => [ tb] => [paged] => 0 [comments_popup] => [meta_key] => [meta_value] => [preview] => [s] => [zdanie] => [fields] => [category__in] => Tablica ( ) [category__not_in] => Tablica ( ) [category__and] => Tablica ( ) [post__in] => Tablica ( ) [post__not_in] => Tablica ( ) [tag__in] => Tablica ( ) [tag__not_in] => Tablica ( ) [tag__and] => Tablica ( ) [tag_slug__in] => Tablica ( ) [tag_slug__and] => Tablica ( ) [meta_query] => Tablica ( ) [ignore_st icky_posts] => [suppress_filters] => [cache_results] => 1 [update_post_term_cache] => 1 [update_post_meta_cache] => 1 [posts_per_page] => 10 [nopaging] => [comments_per_page] => 50 [no_found_rows] => order] => DESC [orderby] => il_posts.post_date DESC ) [tax_query] => WP_Tax_Query Object ( [zapytania] => Tablica ( ) [relacja] => AND ) [post_count] => 0 [bieżący_post] => - 1 [w_pętli] => [liczba_komentarzy] => 0 [bieżący_komentarz] => -1 [znalezione_posty] => 0 [max_num_stron] => 0 [max_num_stron_komentarzy] => 0 [jest_single] => [jest_podgląd] => [jest_strona] => [jest_archiwum] => [jest_data] => [jest_rok] => [jest_miesiąc] => [jest_dzień] => [jest_czas] => [jest_autor] => [jest_kategoria] => [jest_tag] => [jest_podatek] => [is_search] => [is_feed] => [is_comment_feed] => [is_trackback] => [is_home] => 1 [is_404] => [is_comments_popup] => [is_paged] => [is_admin] => [is_attachment ] => [is_singular] => [is_robots] => [is_posts_page] => [is_post_type_archive] => [query_vars_hash] => 90a220b2f180d3ea6ccbd9473e26ec4c [query_vars_changed ] => [zapytanie] => Tablica ( [post_type] => post [connected_from] => 2 ) [request] => SELECT SQL_CALC_FOUND_ROWS il_posts.*, il_p2p.* FROM il_posts INNER JOIN il_p2p WHERE 1=1 AND il_type_posts. = 'post' AND (il_posts.post_status = 'opublikuj' LUB il_posts.post_status = 'prywatny') AND il_posts.ID = il_p2p.p2p_to AND il_p2p.p2p_from W (2) ZAMÓWIENIE IL_posts.post_date DESC LIMIT 0, 10 [ ] => Tablica ( ) ) Czego mi brakuje? ps. Wordpress 3.1.1, Posty 2 Posty 0.7 i PHP 5.3.3


title: motyw wp.. Nie można utworzyć katalogu

text: Czy ktoś mógłby mi w tym pomóc? Próbuję zainstalować motyw motywu wp (wyszedł całkiem niedawno), ale kiedy przesyłam plik zip i wciskam install, pojawia się komunikat Nie można utworzyć katalogu... Co mam zrobić?


title: Jak rozwiązać błąd 500 w panelu administratora WordPress z powodu przekroczenia limitu czasu na getdirsize

text: **problem:** Tylko niektóre blogi nie wyświetlały pulpitu nawigacyjnego (ale wyświetlały wszystkie inne strony administracyjne). Zostawiłem ten problem na jakiś czas (miesiące), ponieważ Googling nie zwrócił niczego istotnego i byłem zbyt leniwy, aby zbadać (i mogłem go obejść, logując się, otrzymując błąd 500, a następnie wciskając wstecz i klikając komentarze). Moim zdaniem były zmiany w .htaccess, wtyczki, które upuszczają złe kanały rss itp. ...ale ... to był rdzeń. Więc dzisiaj poszedłem komentować wszystkie fragmenty w dashboard.php i niestety był to Murphy, ponieważ problem dotyczył dolnej linii... add_action( 'activity_box_end', 'wp_dashboard_quota' ); W którym skomentowałem wiersz //$used = get_dirsize( BLOGUPLOADDIR ) / 1024 / 1024; // zwraca: 1418.9275159836 $used=0; Po czym moja deska rozdzielcza była tak szybka, że łzy napłynęły mi do oczu. Rejestruję to tutaj, ponieważ mam nadzieję, że ludzie szukający problemu teraz skrócą czas i rozpoznają przyczynę. Zwłaszcza w przypadku kombinacji: 500 i pulpitu administracyjnego. ~~**Pytanie:** **Zakładam**, że im większy jest uploaddir, tym wolniej ładują się pulpity dla blogów. Zakładam również, że dzieje się tak w przypadku każdego bloga, ponieważ jest to podstawa. ~~ ~~Czy mam rację i czy mogę zalogować to jako problem, czy też jestem głupi - brakuje czegoś istotnego, co nie powoduje, że jest to problem dla każdego wielostronnego bloga z dużym limitem po pewnym czasie?~~ ~~Teraz podłączyłem 500 i getdirsize Znalazłem http://trac.mu.wordpress.org/ticket/1175 i http://trac.mu.wordpress.org/changeset/2027 ...... Tam został zaimplementowany przez James Collins test przejściowy. Co się stało z testem przejściowym? to by to rozwiązało, myślę. ~~ Przejściowa kontrola zaimplementowana w zgłoszeniu 2027 jest nadal na miejscu (patrz odpowiedź Rarsta poniżej), a całkowite wyłączenie przydziału spowoduje również skrócenie błędu 500, ponieważ jest to sprawdzane w wp_dashboard_quota. Tak więc: jeśli nie wyłączysz limitu, oznacza to, że w końcu pojawi się błąd 500, jeśli masz duży limit. IMHO, które można poprawić / kupić bilet, czy nie?


title: Prześlij miniaturę posta z interfejsu

text: Chcielibyśmy, aby użytkownicy mogli przesyłać miniaturę posta podczas edycji postów. Jak miałoby to być zrobione. Wyobrażam sobie, że korzystałoby z funkcji ajax w wordpressie. Wszelkie pomysły, Cudowne


title: Problemy z kodowaniem znaków na stronach w wielu językach

text: Mam stronę w języku angielskim, ale zawiera wiele nazw niemieckich i hiszpańskich. Początkowo używałem UTF8, ale sprawiało mi to problemy z niektórymi niemieckimi znakami specjalnymi. Przełączyłem się więc na: ISO 8859, ale potem poprawiono niemieckie znaki, ale zepsuło to wszystkie hiszpańskie. Zmieniłem na ISO 8859 w pliku wp-config, ale wygląda na to, że phpmyadmin nie daje mi nawet opcji wyboru ISO 8859. To może być do zniesienia, ale po naprawieniu wszystkich akcentów za pomocą znaków specjalnych, jeśli później coś zmienisz na stronie wszystkie akcenty znów się łamią i trzeba ponownie wstawić wszystkie znaki specjalne! jakieś sugestie? Z góry dziękuję!!!


title: Pobieranie i wyświetlanie kategorii „ten sam post”

text: Zrobiłem wiele kategorii. Każdy przedmiot należy do jednej lub więcej kategorii. Więc kiedy wyświetlam jeden element, lubię pobrać kategorię tego elementu i wyświetlić wszystkie posty, które należą do tej kategorii. Przykład. Krzesło : kot = siedzenie, skóra, jedna osoba Więc kiedy wyświetlam krzesło, lubię poniżej wyświetlić wszystkie elementy, które mają : siedzenie skóra i jedna osoba jako kategoria Czy jest jakaś wtyczka, która to robi? lub w php to proste?


title: WordPress 3.1 usuwa „kategorię” ze ślimaka

text: Czy istnieje sposób na usunięcie „kategorii” ze ślimaka podczas przeglądania postów w określonej kategorii w WordPress 3.1 bez jej zepsucia? Mój klient prosi mnie o usunięcie, ale wydaje się to konieczne - podczas korzystania z tej wtyczki pojawia się błąd Nie znaleziono strony: http://fortes.com/projects/wordpress/top-level-cats/ On też nie chce po prostu zmienić to na inne słowo... bardzo frustrujące... Dzięki, osu


title: Jak określić typ postu nadrzędnego dla typu posta podrzędnego?

text: Chcę zarejestrować niestandardowy typ postu jako element podrzędny innego niestandardowego typu postu. Mam 2 pytania-- 1. `hierarchical' => true` powinien być dodany do rodzica lub dziecka podczas rejestracji? 2. Kodeks mówi „Pozwala na określenie rodzica”, jak?


title: Zmienna od wtyczki do motywu

text: Pierwsza wtyczka, podstawowe pytanie... Próbuję wydrukować zmienną `$xavi` z **wtyczki** do motywu takiego: add_action('init', '_load_options'); function _load_options() { global $xavi; } Żebym mógł go użyć w pliku **theme** takim jak ten: <?=$xavi;?> Nie wygląda na to, że `init` jest właściwym hakiem akcji, ale jedynym, który ma sens to `wp_head` i nie działa Jakieś pomysły, których haka powinienem użyć lub jak zdefiniować zmienne (może poprzez istniejącą funkcję/metodę WP zamiast tworzenia od zera)? Dziękuję!


title: Jak przepisać niestandardowy typ posta za pomocą niestandardowych adresów URL taksonomii?

text: Pracuję w WP multisite, który działa na motywie classipress i istnieje niestandardowy typ postu „`ad_listing`” i niestandardowy typ taksonomii „`ad_cat`”. Teraz adres URL wygląda tak > http://www.example.com/kategoria-reklam/transport/ Muszę przepisać ten adres URL, aby wyglądał jak > http://www.example.com/new-york-city/ transport/ i kategorie są zagnieżdżone, więc może być n-tym poziomem. Pomóż mi, jak to zrobić z regułami przepisywania wp. Z góry dziękuję. Każda pomoc będzie bardzo mile widziana.


title: Wyszukaj tylko tytuł posta

text: Używam standardowego formularza wyszukiwania WordPress do wyszukiwania niestandardowego typu postu. Oto mój kod: <form role="search" method="get" id="searchform" action="<?php echo home_url( '/' ); ?>"> <input type="hidden" name=" post_type" value="adwokat" /> <input type="text" value=""name="s" /> <input type="submit" value="Szukaj" /> </form> Chciałbym ograniczyć to, aby TYLKO przeszukać tytuł posta. Czy jest na to sposób? Dziękuję Ci.


title: Sortowanie wielu metadanych

text:
Szukam przez chwilę, ale nie mogę zrozumieć, jak to zrobić dokładnie ... Chcę posortować moje niestandardowe posty typu post z wieloma metadanymi pól wyboru w interfejsie strony archiwum. Wszystko przechowuj w sesji. Pracuję w tej chwili tylko dla jednego checkboxa na raz... szukam sposobu bez pisania kodu dla każdej możliwości (dużo checkboxów! ;-) )... wiesz co mam na myśli ? <?php add_action( 'init', 'switch_session' ); function switch_session() { if( ! session_id() ) session_start(); if( isset( $_POST[ 'post-mężczyzna' ]) ) { $_SESSION[ 'post-mężczyzna' ] = (1 == $_POST[ 'post-mężczyzna']) ? prawda fałsz; } if( isset( $_POST[ 'post-femelle'] ) ) { $_SESSION[ 'post-femelle' ] = (1 == $_POST[ 'post-femelle'] ) ? prawda fałsz; } if( ! isset( $_SESSION[ 'post-mężczyzna' ] ) ) $_SESSION[ 'post-mężczyzna' ] = false; if( ! isset( $_SESSION[ 'post-femelle' ] ) ) $_SESSION[ 'post-femelle' ] = false; <?php add_action( 'pre_get_posts', 'switch_output_order' ); function switch_output_order( $q ) { if( ! is_admin() && $q->is_main_query() && is_post_type_archive( 'nos-alpagas' ) ) { if( false !== $_SESSION[ 'post-femelle' ] ) { $ q->set( 'meta_query', array( array( 'key' => 'sexe', 'value' => 'Femelle', 'compare' => '=' ) ) ); } if( false !== $_SESSION[ 'post-male' ] ) { $q->set( 'meta_query', array( array( 'key' => 'sexe', 'value' => 'Mâle', 'porównaj' => '=' )) ) ); } <?php function switcher_session() { $femelle = $_SESSION[ 'post-femelle']; $samiec = $_SESSION[ 'post-mężczyzna' ]; ?> <form method="post" class="switcher">
Sexe:

 <input type="hidden" value="0" name="post -femelle"> <input type="pole wyboru" value="1" id="post-femelle" name="post-femelle" <?php zaznaczone( true, $femelle ); ?>> Kobieta <input type="hidden" value="0" name="post-male"> <input type="checkbox" value="1" id="post-male" name="post-male" <?php zaznaczone( true, $male ); ?>> Mężczyzna
 </form> <?php }?>


title: zmień $src z wp_register_script we wtyczkach/motywach

text: Mam dużo wtyczek używających zewnętrznych skryptów z googleapis - są one dławione/zablokowane w Chinach i sprawia to sporo problemów. Bez przepisywania wierszy we wszystkich wtyczkach/motywach i przerywania ścieżki aktualizacji, czy jest sposób, w jaki możemy to zrobić w pliku function.php z motywami, więc przepisuję wszystkie adresy URL $src na lokalne adresy URL?


title: Dwie funkcje wykorzystujące filtrowanie błędów rejestracji

text: Napisałem dwie wtyczki, które wykorzystują filtr registration_errors: add_filter( 'registration_errors', 'process_payment', 10, 3 ); add_filter( 'błędy_rejestracji', 'add_user_to_SF', 10, 3 ); Gdy `add_user_to_SF` zwraca błędy, funkcja `process_payment` działa pomyślnie (wiem to, ponieważ przetwarza płatność). Jak mogę to ustawić tak, że gdy jeden z nich zwróci błąd, drugi nie zostanie uruchomiony i rejestracja użytkownika nie nastąpi?


title: Kategorie motywów Wordpress dla panelu administracyjnego

text: Pracuję nad tym projektem i do końca projektu będę miał ponad 200 i nawet więcej. Muszę mieć wszystkie te motywy wyświetlane w Administrator> Wygląd? Wszystkie motywy zostaną zainstalowane w tej samej witrynie Wordpress. Czy istnieje sposób na uporządkowanie motywów w kategoriach (np. Finanse, Sztuka itp.).


title: Niestandardowa funkcja wp_list_pages()

text: Mam następujący kod w moim pliku `.php`: $my_pages = wp_list_pages("title_li=&child_of=".$my_id."&echo=0"); Następnie tworzę `<ul>` <ul> <?php echo $my_pages; ?> </ul> Problem polega na tym, że chciałbym umieścić **tytuł** w tagu `<h2>` oraz **fragment** strony w tekście poniżej. Można to zrobić za pomocą `wp_list_pages`?


title: Wyświetl kategorie i ich identyfikatory

text: Czy ktoś mógłby mi podać kod do wyświetlania kategorii nadrzędnych i ich dzieci wraz z ich identyfikatorami? Chciałbym na przykład wydrukować je w ten sposób: Europa, Wielka Brytania, Londyn (Europa jest kategorią nadrzędną, Wielka Brytania jest dzieckiem, Londyn jest dzieckiem Wielkiej Brytanii) 102, 150, 175 (są to ich odpowiednie identyfikatory) Europa , Francja, Paryż 102, 153, 189 Europa, Francja, Cannes 102, 153, 192 chcę zrobić to: Kroki, które wykonałem (proszę sprawdzić ten link) Chcę tylko zmienić ten kod: <ul> <? php wp_list_categories('show_count=1&title_li=&hide_empty=0'); ?></ul> aby lista wszystkich kategorii i ich dzieci była wyświetlana wraz z ich identyfikatorami w następującym formacie: Przykład: **Europa,Wielka Brytania,Londyn,East Ham : 25,28,34,36 ** to tylko jedna kategoria nadrzędna (Europa) i jej dzieci (Wielka Brytania) dzieckiem Wielkiej Brytanii jest Londyn, a dzieckiem Londyn East Ham. 25 to numer identyfikacyjny Europy, 28 to numer identyfikacyjny Wielkiej Brytanii, 34 to numer identyfikacyjny Londynu, 36 to numer identyfikacyjny East Ham Uwaga: chcę tylko wyświetlić tę listę na stronie opisanej w powyższym linku. Bardzo dziękuję


title: Komentarze zepsute. Wszystkie komentarze zniknęły i nie można dodawać nowych komentarzy. Możliwy problem z plecakiem odrzutowym?

text: Tak więc moja klientka ma dwa blogi wordpressowe na własnym serwerze – jeden istniejący od dawna, a drugi nowy, który właśnie uruchomiła. Kliknęła na link aktywacyjny plecaka odrzutowego – mający na celu połączenie jej nowego bloga z odpowiednim kontem wp.com – ale zrobiła to po zalogowaniu się do istniejącego bloga. W rezultacie z jej blogiem zostało połączone niewłaściwe konto wp.com. Potem poprosiła mnie, żebym to naprawił. Kiedy powiązałem jej bloga z poprawnym kontem wp.com - wszystkie komentarze zniknęły. Podobnie jak możliwość dodawania nowych komentarzy. Tabela wp_comments wydaje się być pusta, z wyjątkiem 3 komentarzy spamowych. Jeśli zaloguję się na jej konto wp.com, widzę wszystkie jej komentarze - ale niestety połączenie tego konta nie przywraca komentarzy. Po włączeniu Jetpack formularz komentarzy wydaje się przesyłać, ale nie pojawiają się żadne komentarze. Jeśli wyłączę Jetpack i spróbuję skomentować, normalny formularz komentarza wyrzuci ten błąd: Ostrzeżenie: get_object_vars() oczekuje, że parametr 1 będzie obiektem, null podany w insertpathhere/comment.php Ostrzeżenie: Nie można modyfikować informacji nagłówka - nagłówki już wysłane przez ( wyjście rozpoczęło się w /ścieżka/comment.php:158) w /ścieżka/wp-include/pluggable.php Interesujące jest również to, że nie mogę usunąć żadnego z tych komentarzy spamowych. kiedy próbuję, wygląda na to, że to robi, ale potem po prostu pojawiają się ponownie w zapleczu. Wygląda na to, że nic nie może pisać do tego stołu? Próbowałem wszystkich następujących czynności: * wyłączenie wszystkich wtyczek * przywrócenie domyślnego motywu * ręczna ponowna instalacja Wordpress * ręczne usuwanie i ponowne instalowanie jetpack * odłączenie i ponowne połączenie konta wp.com powiązanego z jetpack * naprawa wp_comments i wp_commentsmeta w bazie danych * sprawdzenie wp-config pod kątem białych znaków na górze i na dole pliku * dodanie następującego do functions.php mojego motywu: //zezwól na przekierowanie, nawet jeśli mój motyw zacznie wysyłać dane wyjściowe do przeglądarki add_action('init', 'do_output_buffer' ); funkcja do_output_buffer() { ob_start(); } Ten ostatni usuwa błąd Nie można zmodyfikować informacji nagłówka, ale po prostu odsyła cię do strony 404 motywu zamiast dodawać komentarz. Naprawdę chciałbym dowiedzieć się, co następuje, w tej kolejności: 1. Jak sprawić, by nowe komentarze znów działały. 2. Jak przywrócić istniejące komentarze (które wydają się być dostępne na wp.com) z powrotem na blogu. 3. Wiedzieć, jak to się tak schrzaniło z tak pozornie nieszkodliwej przyczyny. Blog znajduje się pod adresem http://www.nubbytwiglet.com. p.s. Dzisiaj są moje urodziny i chcę tylko rozwiązać tę sprawę.


title: Utwórz div ciała za pomocą CSS

text: Próbuję dodać białe tło tylko do treści i nagłówka mojego bloga, aby móc dodać obraz tła za całą witryną. Wiem, że muszę stworzyć div, który znajduje się za treścią i nagłówkiem, jednak jestem początkującym w CSS, więc jeśli to możliwe, przydałoby się kilka wskazówek. Adres bloga to www.astridkearneyblog.com Każda pomoc byłaby mile widziana! Dziękuję.


title: Podłączanie do ekranu edycji posta tylko dla istniejącej strony

text: Pracuję nad motywem Wordpress, który ukrywa domyślny edytor WYSIWYG i zastępuje go niestandardowym systemem modułów, który jest w porządku i elegancki, ale zdałem sobie sprawę, że gdyby ktoś używał motywu na istniejącej stronie nie mieć dostępu do wcześniej wprowadzonych treści, co jest oczywiście złe. Więc w zasadzie to, co muszę zrobić, to sprawdzić, czy wcześniej istniejąca strona jest załadowana (mam nadzieję, że przez hook), a następnie przenieść tę zawartość do nowszego systemu modułów, który przechowuje dane w niestandardowych polach. Czy istnieje prosty sposób na wykrycie, czy ekran edycji posta jest ładowany dla już utworzonej strony? Nie mogę polegać na post_statusie „opublikowane”, ponieważ muszę również uwzględniać wersje robocze i zaplanowane strony. Może samo sprawdzenie, czy strona ma tytuł, wystarczy, aby odróżnić nową stronę od już utworzonej? Poniższy fikcyjny kod opisuje, co chcę zrobić: > jeśli [na ekranie edycji strony i strona istnieje wcześniej i ma treść] > > to > > Zaimportuj domyślną zawartość the_editor do pola niestandardowego


title: Jak pokazać lub ukryć post na podstawie wyboru meta_value?

text: Jak bym chciał ukryć post na podstawie selekcji meta_value wykonanej na zapleczu. Zwykłą metodą jest po prostu zmiana statusu postu z Opublikuj na Wersja robocza, jednak chcę, aby to działało na podstawie wyboru z listy rozwijanej. meta_klucz to „bieżący_stan” i rozwijane pole z meta_wartością „aktywny” i „wydzierżawiony”. W przypadku wybrania opcji „aktywny” wpis jest wyświetlany, a „wydzierżawiony” spowoduje ukrycie wpisu. Jakieś pomysły, jak to zrobić w czysty sposób?


title: Czy mogę oddzielić komentarze od postów?

text: Mam załączniki, które wymagają wyświetlania na pełnym ekranie. Więc muszę umieścić komentarz w innym miejscu. Jak mogę powiedzieć WP, że te komentarze należą do posta?


title: Wyprowadzanie postów na blogu lub the_content()

text:
Na pulpicie pod stronami dodawania mam 3 sekcje cytatów, pod tekstem
pierwszy

drugi

 trzeci
 Tak więc, kiedy próbuję wypisać je w index.php , robię <?php while(have_posts() ): the_post() ?>

..

 ..

 ..

 <?php endwhile;?> Jak Wyprowadzam cytat id=sekcja1 do div id=pierwszy, id cytatu=sekcja2 do div id=drugi, id cytatu=sekcja3 do div id=trzeci? czy mamy tylko funkcję the_content()? Czy możemy podzielić zawartość na przebicie, które chcemy?


title: Jak zapytać tabelę wp_postmeta o określoną meta_value?

text: Używam następującego kodu w plikach motywu, aby uzyskać dane wyjściowe z bazy danych: <?php $querystr = "SELECT DISTINCT meta_value FROM $wpdb-> wp_postmeta WHERE 'meta_key' LIKE 'movie_name' ORDER BY meta_value ASC"; $ nazwy_filmów = $wpdb->get_results($querystr, OBIEKT); rozmiar echa($nazwy_filmów); ?> <ul> <?php foreach ( $nazwy_filmu jako $nazwa_filmu ){ ?> <li><?php echo $nazwa_filmu->meta_wartość; ?> </li> <?php } ?> </ul> Wynikiem powyższego kodu jest "0" na interfejsie. Ale kiedy uruchamiam to samo zapytanie, tj. SELECT DISTINCT meta_value FROM wp_postmeta WHERE „meta_key” LIKE „movie_name” ORDER BY meta_value ASC w DB to zwraca 6 wierszy. Proszę o pomoc w znalezieniu problemu w kodzie.


title: Wyświetlanie krótkiego kodu ze strony pulpitu Wordpress bez użycia post_id

text:
Mam ten kod do wyświetlania najnowszych postów w niestandardowym motywie mojej strony głównej i działa dobrze. functions.php kod: function my_recent_posts_shortcode($atts){ $q = new WP_Query( array( 'orderby' => 'date','posts_per_page' => '4') ); $lista = ""; while($q->have_posts()) : $q->the_post(); echo '
'; $title=get_the_title(); if ( has_post_thumbnail() ) { echo ''; $list .=the_post_thumbnail(array(300,200),array('alt' =>$title)); echo ''; } echo '
'.$title.'
'; echo '
'; $lista .= wpe_excerpt('wpe_excerptlength_index', ''); echo 'Więcej informacji'; echo '
'; echo '
'; koniec; return $lista; } add_shortcode('recent-posts', 'my_recent_posts_shortcode'); To jest shortcode, którego używam na moich stronach->Strona główna > [ostatnie-posty] Aby wyświetlić shortcode, muszę użyć: <?php $post_id = 1746; $queried_post = get_post($post_id); $check=$queried_post->post_content; echo do_shortcode($check); ?> Do wyświetlenia skróconego kodu użyłem $post_id mojej strony głównej. Chcę wyświetlić zawartość shortcode bez użycia post_id. Kiedy używam shorcode na mojej stronie głównej, automatycznie wywołuje ten shorcode i wyświetla wynik. Mój adres URL motywu to http://templategraphy.com/wp-demo/businessguru/ Proszę zasugerować kilka rozwiązań.


title: Jak zdefiniować identyfikator kategorii w tablicy?

text: Mam następujące: <?php if ( array( 'is_category', 'is_tag' ) ) { ?> Chcę zrobić (to nie do końca działa): <?php if ( array( 'is_category(') 13')', 'is_tag' ) ) { ?> Więc pytam, jak mogę dołączyć ten identyfikator do kodu, który będzie działał? W ten sposób zrobiłbym to w dowolnym miejscu poza tablicą, więc nie jestem pewien, jak to tutaj uwzględnić. Dziękuję


title: add_menu_page Funkcja wywołania zwrotnego: Pominąć zawartość strony?

text: Chcę mieć element menu, który po kliknięciu doda stronę z określonymi argumentami. W uproszczeniu mam: function av_subscribe_create_menu(){ // Utwórz menu najwyższego poziomu add_menu_page( 'Dodaj kanał komentarzy', 'Dodaj kanał komentarzy', 'manage_options', __FILE__, 'av_subscribe_create_feed_page', '' ); } add_action( 'admin_menu', 'av_subscribe_create_menu' ); function av_subscribe_create_feed_page(){ $page = array( 'post_type' => 'strona', 'post_status' => 'publish', 'post_parent' => 13570 ); $new_page_id = wp_insert_post($strona, fałsz); } To nie działa, a nawet gdyby tak było, nie wierzę, że przeniosłoby mnie to do ekranu edycji. Czy istnieje sposób, aby użyć funkcji, aby dodać post i przejść bezpośrednio do ekranu edycji? Również dodatkowe pytanie: Jeśli nie określisz tytułu, ale określisz post_status jako publikację, czy automatycznie utworzy to dla Ciebie slug? Nie chcę jakiegoś bełkotu generowanego automatycznie. Z góry dziękuję.


title: Prywatna społeczność Buddypress powoduje biały ekran na wybranych stronach

text: Używam Buddypress w połączeniu z WordPress, które są w najnowszych wersjach (1.6.4 i 3.5.1 od teraz), i utrzymuję aspekt społecznościowy jako prywatny dzięki wtyczce „Buddypress Private Community”. Pomogło to w blokowaniu stron i przekierowywaniu zarejestrowanych użytkowników po zalogowaniu, ale wygenerowane strony dla członków i grup powodują biały ekran zamiast przekierowywania do `/landing-page?on_login_redir_to="/groups`" zgodnie z oczekiwaniami. Działa to jednak w przypadku strumienia aktywności, który jest również generowany dynamicznie. Czy to ten wiersz kodu w `bp-groups/members-loader.php` powoduje problem? `if (!defined('ABSPATH') ) exit;` Nie mam najmniejszego pojęcia, czym jest ABSPATH, wiedząc, że to pomogłoby.


title: Jak używać do_shortcode za pośrednictwem wywołania AJAX?

text: Usiłuję wywołać formularz kontaktowy 7 przy użyciu AJAX w motywie Wordpress. Idealnie chciałbym użyć shortcode Contact Form 7, aby to zrobić, jednak nie wydaje się, że do_shortcode jest dostępną funkcją, gdy jest wywoływana przy użyciu AJAX (po prostu powtarzał sam shortcode). Natknąłem się na to pytanie: Dlaczego „do_shortcode” wtyczki może nie działać w żądaniu AJAX? co było dokładnie moim problemem! Jednak dostarczone rozwiązanie nie zadziałało dla mnie i jestem prawie pewien, że zaimplementowałem je w taki sam sposób, jak oryginalny post: add_action( 'init', create_function('', 'register_shortcode_ajax( "cl_contact_us", "cl_contact_us") ; ')); function register_shortcode_ajax( $callable, $action ) { if ( empty( $_POST['action'] ) || $_POST['action'] != $action ) return; call_user_func( $callable ); } function cl_contact_us() { echo do_shortcode( '[contact-form-7 id="7" title="Formularz kontaktowy 1"]' ); umierać(); } Jedyne, co musiałem zmienić, to sposób wywoływania funkcji anonimowej z funkcji add_action (z jakiegoś powodu użycie tradycyjnej funkcji anonimowej nie działało, ale użycie funkcji PHP działa dobrze). Poza powyższym, jedyną radykalnie inną rzeczą jest wywołanie jQuery AJAX, ale wierzę, że jest w zasadzie to samo... var ajaxurl = '<?php echo admin_url('admin-ajax.php'); ?>'; $(document).ready(function(){ $('a#contact-button').click(event, function() { event.preventDefault(); $.post( ajaxurl, { 'action':'cl_contact_us' , }, function(odpowiedź) { $('#form').append(odpowiedź); }); }); }); Jest to pomyślne wykonanie wywołania AJAX, ale nadal jest to tylko echo krótkiego kodu, a nie formularza. Mam nadzieję, że to wystarczająco dużo informacji, jeśli będziesz potrzebować więcej, będę tu cały dzień :) Każda pomoc jest bardzo mile widziana. Dziękuję!


title: Czy istnieje hak akcji aktualizacji rdzenia i wtyczek Wordpress?

text: Chciałbym uruchomić kilka akcji na stronie internetowej po zaktualizowaniu rdzenia WP lub dowolnej wtyczki za pomocą wbudowanego procesu aktualizacji. Czy jest na to sposób? Wolałbym, gdybym mógł uruchomić polecenia w 3 różnych przypadkach: 1. Aktualizacja rdzenia WP została zakończona 2. Pojedyncza aktualizacja wtyczki została zakończona 3. Aktualizacja zbiorcza wtyczek została zakończona (tak, że uruchamiam polecenie dopiero po wykonaniu wszystkich zostały skończone)


title: Wyświetlaj niestandardowe posty z niestandardowej taksonomii, posortowane według innej niestandardowej taksonomii

text: Zajmuję się tworzeniem działu Natura na stronie internetowej. Mam niestandardowy typ postu, który zawiera kilka niestandardowych taksonomii (grupa, porządek, rodzina). Mam więc następujące wpisy skategoryzowane w ten sposób - Rodzina zamówień grupowych * * * Owad Lepidoptera NOCTUIDAE Owad Lepidoptera CRAMBIDAE Ptak Galliformes PHASIANIDAE Ptak Passeriformes SITTIDAE Chcę móc wyświetlić listę wszystkich postów, w których występuje termin zamówienia ' Lepidoptera' - mogę to zrobić - ale potem posortowane według wartości Rodziny. Oczekiwałbym więc 2 rekordów - rekord 2, a następnie rekord 1. Rzeczywisty scenariusz ma dalsze taksonomie, takie jak Gatunek i Nazwa zwyczajowa, ale jeśli znajdę rozwiązanie tego problemu, mógłbym zastosować wszędzie tam, gdzie to konieczne. Czytałem, że jest to dość trudne do zrobienia i może sugerować, że projekt danych jest zły - i zamiast tego używać metadanych postu. Jednak nie widzę tego w tym przypadku, ponieważ potrzebuję niestandardowych taksonomii, aby umożliwić wyświetlanie wszystkich postów, w których rodzina jest czymkolwiek. Z góry dziękuję za wszelkie rady w tej sprawie.


title: Motyw potomny:Ładowanie plików js

text: Tworzę motyw potomny z twitterem na podstawie TwentyEleven. Chcę załadować bootstrap.js, więc napisałem następujący wiersz, aby pobrać plik bootstrap.js, ale nie zwraca on prawidłowej ścieżki. <script type="text/javascript" src="<?php dirname( bloginfo('stylesheet_url') ) ?>/bootstrap/js/bootstrap.js"></script> Ścieżka, którą otrzymuję: http:/ /localhost/wordpress/wp-content/themes/codemasala/style.css/bootstrap/js/bootstrap.js Ścieżka, którą powinienem otrzymać: http://localhost/wordpress/wp-content/themes/codemasala/bootstrap/js/ bootstrap.js


title: Zmodyfikuj sformułowanie opcji zbiorczych

text: Chciałbym zmodyfikować sformułowania w akcjach zbiorczych na ekranie postów lub niestandardowych typach postów. Próbuję to zrobić za pomocą następującego kodu, ale to nie działa. Jakiś pomysł dlaczego? add_filter( 'bulk_actions-edit-post', 'my_custom_bulk_actions' ); function my_custom_bulk_actions( $actions ){ $actions['trash'] = 'Tylko testowanie'; unset( $actions[ 'edytuj' ] ); return $akcje; }


title: Dodajesz stopki do postów?

text: Staram się dodawać stopki na końcu moich postów. Muszę mieć możliwość przypisywania różnych stopek do różnych postów (nie globalnie). Próbowałem użyć WP Post Footer, ale nie działa w WP 3.1.2.


title: Jakiego pliku potrzebuję, aby edytować stronę Wszystkie posty w obszarze administracyjnym?

text: Nigdy wcześniej nie edytowałem plików administracyjnych, ale muszę edytować tabelę używaną do wyświetlania moich postów w obszarze administracyjnym (na stronie Wszystkie posty). Czy ktoś może wskazać mi odpowiedni plik do edycji? Zajrzałem do katalogu wp-admin, ale do tej pory nie znalazłem w nim pliku z tą tabelą.


title: Jak dodać bułkę tartą do dowolnego motywu WordPress?

text: Jak dodać ścieżkę nawigacyjną na górze każdej strony mojej witryny? Czekam, żeby wyglądać tak: "Jesteś tutaj: (nazwa strony)"


title: Jak uzyskać bezpośredni link do strony podczas ładowania mojej wtyczki?

text: Wdrażam widżet sieciowy i z tego powodu chciałbym, aby mój skrypt odpowiedział na żądanie jak najszybciej, aby uniknąć ładowania zbędnych rzeczy. Odkryłem, że wywołanie `get_permalink( $page_id )` przed fazą `init` zwraca ten błąd > [19 września 2012 12:10:12 UTC] Błąd krytyczny PHP: wywołanie funkcji członka > get_page_permastruct() na nieobiektu w C:\Program Files > (x86)\Zend\Apache2\htdocs\wordpress\wp-includes\link-template.php on line > 276 Zastanawiałem się, czy istnieje sposób, w jaki mogę pobrać link bezpośredni do strony bez oczekiwania na fazę `init`?


title: Dziwny błąd functions.php w Wordpress

text: Używam wtyczki More Fields i kiedy używam mojego functions.php do osadzenia pola niestandardowego, pojawia się dziwny problem. Po wartości pola następuje „1”. Używam tego kodu: //Address add_action( 'woo_post_inside_before', 'my_address' ); funkcja mój_adres() { global $post; if ( is_single() && in_category('listy')) { echo more_fields('adres', '<h1>','</h1>'); } } Ale jeśli użyję poniższego kodu - nie ma "1" //Adres add_action( 'woo_post_inside_before', 'my_address' ); funkcja mój_adres() { global $post; if ( is_single() && in_category('wykaz')) { echo meta('adres'); } } Jak nadać styl powyższemu przy użyciu meta echa? A może ktoś kiedykolwiek widział problem „1”?


title: Dlaczego wyróżniony obraz nie wyświetla się w moim niestandardowym typie posta?

text: Mam dodaną obsługę miniatur z następującymi w moim functions.php // Dodaj obsługę miniatur add_theme_support('post-thumbnails'); set_post_thumbnail_size (140, 140, prawda ); I tworzę niestandardowy typ posta za pomocą // Create Custom Post Type for Work add_action( 'init', 'create_post_type' ); function create_post_type() { register_post_type( 'custom_post', array( 'thumbnail', 'labels' => array( 'name' => __( 'Niestandardowy' ), 'singular_name' => __( 'Niestandardowy' ) ), ' public' => true, 'has_archive' => true, 'rewrite' => array('slug' => 'custom'), 'taxonomies' => array('category', 'post_tag') ) ); } Jednak gdy tworzę nowy post w niestandardowym typie posta, metapole Polecany obraz nie jest wyświetlane. Próbowałem również użyć tablicy podczas deklarowania niestandardowego typu postu, w następujący sposób, ale to też nie zadziałało // Dodaj obsługę miniatur add_theme_support('post-thumbnails', array ('post','work','custom_post') ); set_post_thumbnail_size (140, 140, prawda ); czego mi brakuje?


title: Jak przekazać kod z pliku header.php do footer.php

text: Inicjuję zmienną z wartością w pliku header.php. Chcę uzyskać dostęp do tej wartości w footer.php, ale nie istnieje po sprawdzeniu. Przykład: **header.php** $status = true; **footer.php** var_dump( $status ); // ma wartość null Jaka jest najlepsza praktyka robienia czegoś w footer.php lub innych plikach, jeśli zachowują się tak samo.


title: Wtyczka Infinite-Scroll i Wtyczka Jetpack Infinite Scroll - Dodawanie do motywu „Myśli”

text: Jak włączyć nieskończone przewijanie (albo za pomocą wtyczki nieskończonego przewijania LUB wbudowanego plecaka odrzutowego z nieskończonym przewijaniem) w motywie Wordpress „Myśli”? Jestem totalnym głupcem w edytowaniu tych rzeczy, więc jeśli jesteś na tyle uprzejmy, aby pomóc, proszę, zachowaj to bardzo prosto, jakbym nic nie wiedział.


title: Komentarze Paginacja jako lista nieuporządkowana

text: Obecnie używam `<?php paginate_comments_links(); ?>` aby wyświetlić stronicowanie komentarzy. Jak mogę to dostosować, aby używał UL i LI? (Tak jak jest to możliwe w przypadku niestandardowej paginacji postów). Dziękuję


title: Hak do wczytywania postów i stron

text: Muszę uruchomić funkcję, gdy zostanie załadowany konkretny post lub strona. Czy jest jakiś haczyk, który pozwala mi sprawdzić, czy post jest wyświetlany podczas ładowania strony?


title: Wordpress : "link do istniejącej treści" nie pokazuje niestandardowych typów postów

text: Widziałem wiele osób, które piszą z podobnym problemem, np. z usunięciem niestandardowego typu posta w polu wyszukiwania „link do istniejącej treści” w edytorze tinyMCE w Wordpress. Mam odwrócony problem, widzę TYLKO strony i posty. Nie widzę niestandardowych typów postów, które stworzyłem, wszystkie z public ustawioną na true, publicly_queryable ustawioną na true, capacity_type ustawioną na true, show_in_nav_menus ustawioną na true i tak dalej. Użyłem wtyczki "B09 Link do istniejącej zawartości" bez rezultatów. Czemu? Co mogę zrobić? Może problem tkwi w deklaracji typu custom post? Stworzyłem plik php zawarty w functions.php mojego motywu. Czy to jest problem? Czy muszę załadować niestandardowy typ posta w inny sposób?


title: Przepływ pracy umożliwiający franczyzobiorcom edytowanie jednego posta, do którego tylko oni mieliby dostęp i przesyłanie go do zatwierdzenia – brak praw do publikacji

text: Potrzebuję pewnego rodzaju przepływu pracy, który pozwoli franczyzobiorcy zalogować się do wordpress, zobaczyć tylko jeden post, który może zobaczyć, określony przez administratora i móc go modyfikować, ale nie byłby w stanie opublikować treści do serwisu, przesyłaj tylko do przeglądu, wtedy moderator zostanie powiadomiony i zatwierdzi zmiany i opublikuje treść na stronie. Niektóre wtyczki, na które patrzyłem, takie jak zakres ról i zaawansowany menedżer dostępu, to po prostu zawiły bałagan, którego klient nie miałby pojęcia, jak go używać. Również jeśli uczynisz kogoś współtwórcą, nie będzie on mógł edytować posta, a jeśli uczynisz go redaktorem, będzie miał możliwość natychmiastowego opublikowania, czego nie chcę. Szukam najczystszego, najłatwiejszego sposobu na zrobienie tego.


title: Dołącz obraz do nowych postów

text: Próbuję dołączyć obrazek do treści posta. * Post został utworzony. * Obraz zostanie dodany do Biblioteki mediów. * Miniatura jest dodawana do posta. * Obrazy nie są dodawane? $attachment = array( 'guid' => $image_url, 'post_mime_type' => $wp_filetype['type'], 'post_title' => $c_img . ' - ' . $key, 'post_status' => 'dziedziczy', 'post_date' => date('Y-m-d H:i:s'), 'post_parent' => $post_id // Nie wydaje się, aby dodać go do rodzica??? ); // dodanie obrazu do biblioteki mediów $attachment_id = wp_insert_attachment($attachment, $image_path); $attachment_data = wp_generate_attachment_metadata ($attachment_id, $image_path); wp_update_attachment_metadata ($attachment_id, $attachment_data); // dodawanie miniatury, działa dobrze? if ($klucz == 0) { add_post_meta($post_id, '_thumbnail_id', $attachment_id, true); }


title: żądanie ajax nie zwraca wyniku

text:
używam niestandardowej wtyczki do wyświetlania wartości po stronie administratora wordpress. Mój plik html Jquery to  Mój plik wtyczki to add_action('wp_ajax_my_action', 'my_action_callback'); function my_action_callback(){ $name = $_POST['test']; $miasto = $_POST['test1']; $data = $_POST['test2']; if ($data != '') { $enddate = data("Y-m-t", strtotime($data)); $dates_sql = " ORAZ data_początkowa <= '$data' "; } if ($miasto != '' && $miasto != -1) $destination_sql = "I miejsce = '$miasto'"; if ($nazwa != '' && $nazwa != -1) $origincity_sql = "ORAZ nazwa_zdarzenia = '$nazwa'"; $query = " SELECT * FROM <nazwa tabeli> WHERE event_id!='' " . $dates_sql . " " . $docelowy_sql . " " . $origincity_sql . " ZAMÓW WG data_początkowa DESC "; $results = $wpdb->get_results($query) lub die(mysql_error()); foreach ($results as $row) { $message = "
".$row->username."	".$row->nazwa_zdarzenia."	". $row->miejsce."	".$row->e-mail."	 ".$row->missed_days."	".$row->payment_mode."	".$row->amount_paid."	".$row->amount_balance."	".$row->poczta."
"; } echo $wiadomość; Wyjście(); } Nie otrzymuję odpowiedzi do pliku jquery html, mimo że zwraca -1 jako odpowiedź, wszelkie zmiany do zrobienia, proszę help.stuck dzisiaj na tym.


title: Tłumaczenie obrazów w Wordpress

text: Jestem nowy w Wordpress, ale jestem ciekaw opcji tłumaczenia. Wiem, że istnieje wiele wtyczek tłumaczeniowych, które mogą konwertować tekst bloga na różne języki. Chciałbym jednak wiedzieć, czy jest możliwe stworzenie opcji, w której język może być wybrany z menu bloga i różne obrazy będą wyświetlane na blogu w zależności od wybranego języka?


title: Załaduj wiele arkuszy stylów w jednym warunku EYE

text: Chcę załadować wiele arkuszy stylów Load w jednym warunku dla programu Internet Explorer: wp_enqueue_style('ie-style', get_template_directory_uri() .'/style-ie.css'); wp_enqueue_style('tj', get_template_directory_uri() . '/tj.css'); // globalne $wp_styles; $wp_styles->add_data('styl IE', 'warunkowe', 'IE 9'); $wp_styles->add_data('tj', 'warunkowe', 'IE 9'); A wynik jest taki: <!--[if IE 9]> <link rel='stylesheet' id='ie-style' href='http://localhost/resources/wp-content/themes/style- ie.css' type='text/css' media='all' /> <![endif]--> <!--[if IE 9]> <link rel='stylesheet' id='ie' href= 'http://localhost/resources/wp-content/themes/ie.css' type='text/css' media='all' /> <![endif]--> Jak mogę połączyć je w jednym warunku, aby być tak: <!--[if IE 9]> <link rel='stylesheet' id='ie-style' href='http://localhost/resources/wp-content/themes/style-ie.css ' type='text/css' media='all' /> <link rel='stylesheet' id='ie' href='http://localhost/resources/wp-content/themes/ie.css' type= 'text/css' media='all' /> <![endif]--> Twoja pomoc jest naprawdę doceniana. Dziękuję Ci


title: Jak uciec z niestandardowego css?

text: Tworzę motyw WordPress, w którym umożliwiłem użytkownikom dodanie niestandardowego css z opcji motywu. Ten kod css jest następnie bezpośrednio wywoływany w sekcji head strony za pomocą następującego kodu: add_action('wp_head', 'theme_dynamic_css'); funkcja theme_dynamic_css(){ globalna $my_theme_options; $custom_css = ''; if (isset($my_theme_options['custom-css'])) { $custom_css .= $my_theme_options['custom-css']."\r\n"; } echo '<style id="mój-motyw-niestandardowy-css">'.$custom_css.'</style>'; } Czy powinienem tutaj używać esc_html()? Na początku założyłem, że jeśli kod jest między tagami stylu, to nie powinno być problemu, ale teraz jestem zdezorientowany. Proszę pomóż.


title: Dodaj pasek górny do statycznej strony html

text: Mam bloga WordPress, ale prowadzę też samodzielną, statyczną stronę HTML w tej samej domenie/serwerze (LaughingSquid, jeśli to robi różnicę). Jestem _bardzo_ nowy w WordPressie i PHP, więc zastanawiam się, czy istnieje stosunkowo prosty sposób użycia PHP, aby dodać górny pasek, który pojawia się na moich stronach opartych na WordPressie, do statycznej strony HTML. Czy to możliwe i jak byś to zrobił? Dziękuję.


title: przekieruj index.html wewnątrz folderu na stronę wordpress o tej samej nazwie

text: mam stronę wp o nazwie mysite.com/stuff/ mam podkatalog na moim ftp o nazwie mysite.com/stuff/index.html z mnóstwem plików i innych podkatalogów w środku. kiedy wchodzę do mysite.com/stuff/ chcę, aby wyświetlała stronę wp, ale nadal wyświetla mi zawartość mysite.com/stuff/index.html (podfolder i strona wp mają tę samą nazwę) muszę zachowaj wszystkie pliki w podkatalogu mysite.com/stuff/ dostępne za pośrednictwem bezpośrednich linków, ale wystarczy obsłużyć stronę wp zamiast index.html. Muszę zachować nazwę URL strony wp i nazwę podfolderu, ale tylko serwuj stronę wp, a NIE serwuj index.html. zmiana struktury permalinka nie wchodzi w grę w tym momencie. próbowałem użyć wtyczki przekierowania i ustawiłem źródłowy adres URL na /stuff/index.html i docelowy na /stuff/, ale nadal obsługuje index.html, daj mi znać, jeśli masz jakieś sugestie. próbowałem zmienić nazwę index.html na coś innego, ale potem wyświetla zawartość podkatalogu jako listę linków w przeglądarce, a nie stronę wp. Dziękuję!


title: Wieloetapowa rejestracja WordPress : w 4 krokach jak to zrobić?

text:
Widziałem w kilku witrynach WordPress podczas rejestracji, że proces rejestracji składa się z 3 lub 4 kroków. jak mogę zaimplementować taki proces do mojego motywu? tj.: 1. wybierz swoją rolę + wypełnij formularz rejestracyjny ----> jeśli jest OK wyślij to przejdź do kroku 2 2. dane profilu : zdjęcie użytkownika , jakiś formularz usermeta ----< jeśli się zgadza wyślij to przejdź do kroku 3 3. Podgląd profilu przed potwierdzeniem ---< przejdź do kroku 4 lub wróć do kroku 3, aby wprowadzić zmiany. 4. rejestracja zakończona sukcesem _**UPDATE_** > Cześć, trochę się zorientowałem (używam motywu Jobroller, który > ma normalny jednoetapowy formularz rejestracyjny, ale ma formularze wieloetapowe > do przesyłania zadań aukcji) prześlij formularz pracy. chciałem użyć tego samego > (prześlij wieloetapowe formularze pracy) do formularza rejestracyjnego, więc użytkownicy są zobowiązani do wypełnienia > danych profilu lub czegokolwiek w tym samym procesie. rejestracja. > więc zhakowałem oryginalną rejestrację motywu jobroller (includes/theme- > login.php) i tu co daje. >> theme-login.php tutaj są kroki rejestracji funkcji, które zastępują oryginalną funkcję `jr_register_form()` jr_registration_steps() { // Pokaż formularze kroków rejestracji ### Zapobiegaj buforowaniu nocache_headers(); jr_load_form_scripts(); //globalna $post, $wysłana; globalna $wysłana; $submitID = $post->ID; $wysłane = tablica(); $errors = nowy WP_Error(); if (!is_user_logged_in()) : $krok = 1; inaczej : $krok = 2; if (!current_user_can('can_submit_job')) : //can_submit_listing przekierowanie do mojej aukcji redirect_myjobs(); endif; endif; if (isset($_POST['register']) && $_POST['register']) { $result = jr_process_register_form( get_permalink($submitID) ); $błędy = $wynik['błędy']; $wysłany = $wynik['wysłany']; //} //elseif (isset($_POST['login']) && $_POST['login']) { //$errors = jr_process_login_form(); } elseif (isset($_POST['job_submit']) && $_POST['job_submit']) { $result = jr_process_submit_job_form();//jr_process_submit_user_registration_form $errors = $result['errors']; $wysłany = $wynik['wysłany']; if ($errors && sizeof($errors)>0 && $errors->get_error_code()) $step = 2; w przeciwnym razie $krok = 3; } elseif (isset($_POST['preview_submit']) && $_POST['preview_submit']) { $step = 4; $wysłany = json_decode($_POST['wysłany']); } elseif (isset($_POST['confirm']) && $_POST['confirm']) { $step = 4; jr_process_confirm_job_form();//jr_process_confirm_user_registration_form } elseif (isset($_POST['goback']) && $_POST['goback']) { $posted = json_decode(stripslashes($_POST['posted']), true); } if( isset($_GET['checkemail']) && 'newpass' == $_GET['checkemail'] ) $message = __('Dziękujemy za rejestrację! Wysłano do Ciebie wiadomość e-mail zawierającą Twoje hasło.' ,'motywy aplikacji'); get_template_part('nagłówek'); ?>

<?php _e('utwórz konto', 'appthemes'); ?>
 <?php echo '
'; for ($i = 1; $i <= 4; $i++) : echo '<li class="'; if ($step==$i) echo 'current'; if (($step-1)== $i) echo „poprzednie”; if ($i<$krok) echo „gotowe”; echo „”>”; switch ($i) : case 1 : _e('Utwórz konto', 'appthemes'); przerwanie; przypadek 2 : _e('Wprowadź szczegóły profilu', 'appthemes'); przerwanie; przypadek 3 : _e('Opcje podglądu/profilu', 'appthemes'); przerwanie; przypadek 4 : _e('Potwierdź', 'appthemes'); przerwanie; wyłącznik końcowy; echo '
'; koniec za; echo '

'; // pokaż komunikat o powodzeniu zwykle, ponieważ hasło zostało wysłane do nowego użytkownika if (isset($message) && !empty($message)) echo '
'.$message.'
”; jr_show_errors( $błędy ); przełącznik ($step) : przypadek 1 : jr_before_step_one(); // do_action hook ?>
<?php _e('Aby opublikować ofertę pracy, musisz się zalogować lub utworzyć konto — umożliwi to przeglądanie, usuwanie lub ponowne wystawianie swojej aukcji w przyszłości.', 'appthemes '); ?>

 <?php jr_register_form( get_permalink($submitID), 'job_lister' ); ?>

 <?php jr_login_form( get_permalink($submitID), get_permalink($submitID) ); ?>

 <?php jr_after_step_one(); // do_action przerwanie haka; przypadek 2: jr_before_step_two(); // hak do_akcji jr_submit_job_form(); //*****jr_submit_user_registration_form(); jr_after_step_two(); // do_action przerwanie haka; przypadek 3: jr_before_step_three(); // hak do_akcji jr_preview_job_form(); //*****jr_preview_user_registration_form(); jr_after_step_three(); // do_action przerwanie haka; przypadek 4: jr_before_step_four(); // hak do_akcji jr_confirm_job_form(); //*****jr_confirm_user_registration_form(); jr_after_step_four(); // do_action przerwanie haka; wyłącznik końcowy; ?>

 <?php if (get_option('jr_show_sidebar' )!=='nie') get_sidebar('prześlij'); ?> <?php get_template_part('stopka'); } > tutaj co mam w moim include/forms/register/ register-process.php register-process.php proszę zauważyć, że zmodyfikowałem to na dole: `// redirect wp_redirect($success_redirect); wp_redirect($success_redirect);// przekieruj użytkownika do pulpitu nawigacyjnego podczas rejestracji exit(); ` > do tego kodu : $redirect_to = !empty( $_POST['redirect_to']) ? $_POST['redirect_to'] : '?action=register&step=2'; wp_safe_redirect ($ przekierowanie_do ); Wyjście; > aby dodać `&step=2` do adresu URL, myślę, że możesz dodać podobny kod do > innego formularza, aby przekierować i pokazać poprawny krok w adresie URL po > ?action=register nie skończyłem jeszcze hackowania kodu do dopasować go do moich potrzeb, ale to, co zasugerowałem, to początek, a inni mogą pomóc w modyfikacji lub lepszej prezentacji. mam nadzieję, że ci to pomoże :)


title: $ wp_query problem z nazewnictwem meta_key

text: To, co próbuję zrobić, to sortować posty według pól niestandardowych. Mam kilka niestandardowych pól, które nie działają poprawnie, i otrzymuję stronę 404. Pola, które nie działają, użyłem myślników w konwencji nazewnictwa, tj. `var-name`. Kiedy przełączam myślniki na podkreślenia, to działa, tj. `nazwa_zmiennej`. Czy przeoczam coś prostego w PHP lub Wordpress, które powoduje konflikty, gdy to robię? * Wiem, że mógłbym po prostu zmienić wszystko na podkreślenia, ale lubię znać źródło problemów, aby móc ich uniknąć w przyszłości. Używam `pre_get_posts` do modyfikacji wykonywanego zapytania: add_action( 'pre_get_posts', 'my_modify_query' ); function my_modify_query( $wp_query ) { if ( is_category() ) { // Działa - podkreślenie if ( isset( $_REQUEST['var_name'] ) { $meta_query[] = array( 'key' => 'var_name', ' wartość' => $_REQUEST['nazwa_zmiennej'] ); } // Czasami działa - myślnik if ( isset( $_REQUEST['var-name'] ) ) { $meta_query[] = array( 'key' => 'var-name', 'value' => $_REQUEST[' nazwa-zmiennej'] ); } if ( ! empty( $meta_query )) { $wp_query->set( 'meta_query', $meta_query ); } } } Sprawdzam dodatkowe pola niestandardowe, powyższy przykład dotyczy zwięzłości i wyjaśnienia i jest taki sam dla pól dodatkowych. **EDIT 1** Oto zapytania uruchamiane przez Wordpress: Nieudana myślnik SELECT SQL_CALC_FOUND_ROWS wp_xxxxx_posts.ID FROM wp_xxxxx_posts WHERE 1=1 AND 0 = 1 AND wp_xxxxx_posts.post_type IN ('post') AND ( wp_xxxxx_posts. publikuj' LUB wp_xxxxx_posts.post_author = 1 AND wp_xxxxx_posts.post_status = 'prywatny') GROUP BY wp_xxxxx_posts.ID ORDER BY wp_xxxxx_posts.post_date DESC LIMIT 0, 10 Pomyślny znak podkreślenia SELECT SQL_CALC_FOUND_ROWS_wp_xxxxx_L = wp_xxxxx_postmeta.post_id) GDZIE 1=1 AND wp_xxxxx_posts.post_type IN ('post', 'custom_post_type' ) AND ( wp_xxxxx_posts.post_status = 'publish' OR wp_xxxxx_posts.post_author = 1 AND wp_xxxxx_post_type' wp_xxxxx_postmeta.meta_key = 'var_name' AND CAST(wp_xxxxx_postmeta.meta_value AS CHAR) = '116' ) ) GROUP BY wp_xxxxx_posts.ID ORDER BY wp_xxxxx_posts.post_date DESC LIMIT 0, 10 Jeśli wejdę do phpMyAdmina i po prostu przełączę `var_name` w powyższym zapytaniu do `var-name` to działa. **Edytuj 2** Przekazuję pola niestandardowe w następujący sposób: http://mysite.com/?cat=example&var-name=100


title: Utwórz klikalną nazwę w WP_List_Table dla administratora wtyczek

text:
Rozwijałem wtyczkę, w której chciałem stworzyć tabelę, stylizowaną i działającą tak, jak natywne tabele Post/Page w Wordpress. Postępując zgodnie z poniższym przewodnikiem, udało mi się stworzyć tabelę i załadować moją bazę danych. Jedyne, czego nie mogę zrobić, to jak sprawić, by jedna z zawartości wiersza była „klikalna”. http://wpengineer.com/2426/wp_list_table-a-step-by-step-guide/ IE – umożliwienie klikania kolumny „nazwa”. Pod nazwą mam przyciski „edytuj, usuń”, ale to nie wystarczy. Wszelkie rady byłyby bardzo mile widziane. Spojrzałem na inną wtyczkę, aby zobaczyć, jak to zrobili, i wyglądało na to, że rozbili stół i na stałe zakodowali html dla tabeli. Mam nadzieję, że nie muszę tego robić. EDYCJA: ![clickable, linked, name](http://i.stack.imgur.com/SA4FZ.png) Nazwa posta, Hello world!, jak widać, jest linkiem/klikalnym. # **ROZWIĄZANIE** aby to zadziałało, musiałem usunąć moje niestandardowe funkcje kolumn, które zawierały moje akcje na wierszach. Okazuje się, że możesz po prostu nazwać wiersz działania div! Oto funkcja, która mi pomogła dzięki Milo. function single_row_columns($item) { lista($kolumny, $ukryte) = $this->get_column_info(); foreach ($columns as $column_name => $column_display_name) { $class = "class='$column_name column-$column_name'"; $styl = ''; if (in_array($column_name, $hidden)) $style = ' style="display:none;"'; $atrybuty = "$klasa$styl"; if ('cb' == $nazwa_kolumny) { echo ""; echo '<input type="pole wyboru" name="id[]" value="%s" />', $item['ID']; echo "	"; } elseif ('galname' == $column_name) { echo ""; echo '', $item['galname']; echo ""; echo "
"; echo sprintf('Edytuj',$_REQUEST['strona'],'edit',$item['id']); echo " | "; echo sprintf('Usuń',$_REQUEST['strona'],'usuń',$item['id']); echo "
	"; } else { echo ""; echo $this->column_default( $pozycja, $nazwa_kolumny ); echo "	"; } } }       Dzięki wielkie! Jakub


title: Jak dołączyć admin-ajax podczas ładowania zewnętrznego javascript

text: Tworzę wtyczkę, która ma jakiś zewnętrzny Javascript i niektóre wywołania AJAX ... ale nie znam najlepszego sposobu odniesienia się do pliku `admin-ajax.php` ponieważ ścieżka wymaga trochę danych wejściowych z PHP (ścieżki i taki). Czy powinienem zadeklarować globalną zmienną javascript? Jaki jest najlepszy sposób, aby to osiągnąć?


title: Niestandardowe ciągi do tłumaczenia za pomocą wtyczki Polylang

text: Używam wtyczki **WP 3.5** i **Polylang 0.9.8** do tłumaczenia na różne języki. Wszystko jest w porządku, a wtyczka działa dobrze, ale teraz mam problem – **Muszę przetłumaczyć niestandardowe ciągi** , na przykład ciągi wewnątrz widżetów. Co możesz mi polecić, aby rozwiązać ten problem? **DODANO:** Na przykład (mówię o tekście w widżetach, ale nie nagłówku), czy mogę dodać jakieś stałe łańcuchowe i zapisać je z kodu php na mojej stronie -- i zmusić je do przetłumaczenia na String strona tłumaczeniowa Polylang?


title: Co robi do_action('admin_init'); czy faktycznie?

text: Jaki wpływ ma wyłączenie do_action('admin_init'); w admin.php zrobić? Wyłączyłem tę funkcję, ponieważ za każdym razem, gdy próbowałem wstawić polecany obraz, otrzymuję błąd 404, tj. Media-upload.php i ajax-admin.php nie zostały znalezione na serwerze. Po wyłączeniu do_action('admin_init'); , wszystko działało dobrze, z wyjątkiem projektu administratora. Następnie ręcznie podłączyłem kolory-classic.css. Dzięki Sabin


title: Jak zadzwonić do menedżera biblioteki multimediów WP3.5?

text: W przeszłości okno Biblioteki mediów mogło wyglądać tak: tb_show("Prześlij obraz", "media-upload.php?type=image&TB_iframe=1&width=640&height=520"); To nadal działa w WP3.5. Ale zastanawiam się, jak otworzyć nowego menedżera mediów? Nie jest już obsługiwany przez Thickbox - `tb_show()`. Dzięki za wszelkie rady!


title: Kontynuuj wykonywanie skryptów java, gdy wystąpią błędy

text: Używam natywnej funkcji WP wp_enqueue_script() dla wszystkich moich skryptów JavaScript ładowanych zarówno w interfejsie WP, jak i zapleczu, dzięki czemu może obsługiwać zduplikowane wywołania tego samego skryptu i tak dalej. Jednym z problemów jest to, że inni programiści nie używają tej funkcji i ładują swoje skrypty bezpośrednio ze swojego kodu, co powoduje dwukrotne ładowanie jQuery lub jQuery-UI, co prowadzi do wielu błędów. Inną kwestią jest to, że kod, który nie jest własnością mojego, powoduje błąd i zatrzymuje wykonywanie JavaScript poza tym punktem. **EDYTUJ:** W skrócie: 1. Wystąpił błąd javascript w kodzie, którego nie jestem właścicielem. 2. Mój kod nie działa z powodu błędu f*%@. 3. Chcę, aby mój kod ominął ten błąd i nadal się wykonywał. Jest sposób na poradzenie sobie z tymi problemami?


title: Czy mogę połączyć się z procesem zapraszania użytkownika, aby zweryfikować, czy jego adres e-mail pochodzi z określonej domeny?

text: Mam opcję witryny, w której użytkownicy mogą wprowadzać domeny, z których można rejestrować się na białej liście. To, co chciałbym zrobić, to podłączyć się do przepływu zaproś/utwórz użytkownika, aby zweryfikować, czy domena nowego użytkownika na podstawie jego adresu e-mail jest zgodna z jedną z domen w opcjach witryny. Czy ktoś wie, czy jest to możliwe, lub jak się do tego zabrać? _Dodaj wyjaśnienie:_ Musiałoby to sprawdzić pole adresu e-mail w procesie zapraszania i zakładam, że należy usunąć wszystko oprócz domeny głównej. Następnie sprawdź, czy domena jest zawarta w tablicy z opcji bloga. Więc myślę, że początek byłby taki? function dwsl_whitelistreg() { $settings=get_option( 'school_settings'); if (in_array( ENTEREDEMAILADDRESS , $settings[whitelist])) { AKCJA ZGŁASZANIA UŻYTKOWNIKA } else { echo "Przepraszam, adres e-mail użytkownika nie pasuje do domeny podanej przez szkołę. Jeśli uważasz, że to błąd, proszę e-mail support@dewsly.com"; } } add_filter('wpmu_signup_user', 'dwsl_whitelistreg');


title: Importer nie importuje każdego posta

text: Próbuję przenieść zawartość bloga wordpress.com na własny blog. W tej chwili próbuję po prostu ustawić rzeczy w moim lokalnym środowisku. Wyeksportowałem zawartość za pomocą wbudowanego eksportera WordPress z oryginalnego bloga, a plik jest nieco większy niż 2 megabajty. W każdym razie udało mi się zwiększyć limit wysyłania, więc import faktycznie działa. Problem polega na tym, że importuje tylko posty z 2010 roku. Czy istnieje jakiś inny limit ustawiony gdzieś indziej?


title: Czy "SELECT TOP 0" to błąd w bazie danych MS SQL?

text: Mam problem, że moja strona postów wyświetla „nie znaleziono postów”, a tuż nad nią znajduje się „Wszystkie (1) | Opublikowane (1)” (jest to nowa instalacja). Post jest również niewidoczny na stronie live, nie tylko w administracji. Myślę, że może to mieć coś wspólnego z moją bazą danych, którą jest SQL Server używający WP Db Abstraction. Zainstalowałem więc pasek debugowania i znalazłem to zapytanie: SELECT TOP 0 * FROM wp_posts WHERE 1=1 AND wp_posts.post_type LIKE 'post' AND (wp_posts.post_status = 'publish' OR wp_posts.post_status LIKE 'future' OR wp_posts.post_status LIKE 'draft' LUB wp_posts.post_status LIKE 'oczekujące' LUB wp_posts.post_status LIKE 'private') ZAMÓWIENIE WG wp_posts.post_date DESC WP_Posts_List_Table->prepare_items, wp_edit_posts_query, wp, WP-query, WP->> WP_Query->get_posts, pdo_wpdb->query, pdo_wpdb->_post_query `SELECT TOP 0` wygląda podejrzanie, co byś powiedział? Jeśli to rzeczywiście błąd, jakieś sugestie, jak to naprawić?


title: Wiele pojedynczych witryn, jeden katalog wtyczek - dostosuj plugins_url()

text: _[to nie jest pytanie z wielu witryn]_ > Aktualizacja: to pytanie jest logiczną niemożliwością lub pętlą myśli, jeśli chcesz >, sprawdź aktualizację poniżej. Technika została opisana tutaj w WPEngineer. Umożliwia posiadanie jednego folderu wtyczek do obsługi wielu witryn WordPress działających na tym samym serwerze. Tak więc wszystkie moje witryny programistyczne mają to w wp-config.php define( 'WP_PLUGIN_DIR', '/www_dev/base-site/wp-content/plugins' ); define( 'WP_PLUGIN_URL', 'http://base-site.dev/wp-content/plugins'); Tylko witryna podstawowa ma folder wtyczek i nie ma tych stałych ustawionych w swoim wp-config. Znalazłem sytuację, w której jestem w _other-site.dev_ i wtyczka próbuje wywołać _base-site.dev_ , w następujący sposób: * omawiana wtyczka to Advanced Custom Fields, ale myślę, że może się to zdarzyć w każdym innym * Export Funkcja XML wtyczki wywołuje ten adres `http://base-site.dev/wp-content/plugins/advanced-custom-fields/core/actions/export.php` * teoretycznie powinien to być `http:// /other-site.dev/wp-content/plugins/advanced-custom-fields/core/actions/export.php`, ale ten adres nie istnieje Wtyczka buduje akcję formularza, która wykonuje funkcję eksportu przy użyciu tej zmiennej ` $this->dir = plugins_url('',__FILE__);` **Pytanie brzmi** : czy możemy stworzyć regułę htaccess lub zastosować filtr, aby rozwiązać ten problem? # [aktualizacja] Po wprowadzeniu anmari i przyjrzeniu się bliżej, myślę, że nie ma na to rozwiązania. plugins_url **używa** `WP_PLUGIN_URL`. Wtyczka wyświetla następujący html: `<form action="http://base-site.dev/wp-content/plugins/advanced-custom-fields/core/actions/export.php" method="post"> ` i nie ma i nigdy nie będzie czegoś takiego jak: `<form action="http://other-site.dev/wp-content/plugins/advanced-custom-fields/core/actions/export.php" method="post">`


title: Jak uzyskać permalink za pomocą funkcji get_blog_post w multisite?

text: Używam kodu takiego jak ten $post = get_blog_post($blog_id, $data); echo __('Opublikuj w') . ' "guid.'">' . $post->post_title . '"'; Ale link href wygląda tak „mojasubdomena.example.com/?p=345” zamiast linku bezpośredniego. Czy ktoś może mi powiedzieć, jak uzyskać permalink? Dziękuję


title: Uzyskaj najpopularniejsze terminy dla niestandardowego typu postu

text: Uderzyłem w kolejny mały kamień w moim obecnym projekcie! Próbuję wyświetlić listę (i link) do strony archiwum dla 4 najczęściej używanych terminów dla niestandardowego typu postu. Mam to; get_terms('trade',array('orderby'=>'count','order'=>'DESC','number'=>4)) ..co jest we właściwej linii, ale nie mogę znaleźć sposób na przypięcie tego do konkretnego typu posta. Istnieje jedna taksonomia o nazwie „handel” obejmująca 6 niestandardowych typów postów na stronie, muszę znaleźć 4 najlepsze dla każdego z nich. Zacząłem przeglądać tabele i stwierdziłem, że prawdopodobnie mogę wykonać zapytanie według typu postu i uporządkować według kolumny „count” w tabeli wp_term_taxonomy. Jednak to naprawdę przekracza moje granice z MySQL, ponieważ nie znam wydajnego sposobu na napisanie tego, co wydaje się być tak złożonym zapytaniem. Jestem na tym już od 4 godzin, nie sądzę, że grosz spadnie bez pomocy! Dzięki za obejrzenie...


title: Jak korzystać z domyślnego skryptu miernika siły hasła w wordpressie?

text: Umieściłem w kolejce domyślny miernik siły hasła wordpress, ale nie wiem, jak z niego korzystać. Obecnie na stronie kodeksu nie ma żadnego linku do swojej dokumentacji. Czy ktoś ma linki do swojej strony demonstracyjnej lub dokumentacji? ## Rozwiązany kod HTML jest dość prosty. Pojawią się dwa pola haseł. Jeden div, aby pokazać wynik hasła i ukryty plik, aby uzyskać nazwę użytkownika. I oczywiście masz w kolejce `jquery` i `wp_enqueue_script('password-strength-meter');` przed kodem jQuery. Oto kod jQuery, który sprawi, że to zadziała: jQuery(document).ready(function(){ if(jQuery("#pass-strength-result").length > 0){ jQuery("#pass1").bind( "keyup", function(){ var pass1 = jQuery("#pass1").val(); var pass2 = jQuery("#pass2").val(); var username = jQuery("#username").val (); var siła = hasłoStrength(hasło1, nazwa użytkownika, hasło2); updateStrength(siła; }); jQuery("#pass2").bind("keyup", function(){ var pass1 = jQuery("#pass1" ).val(); var pass2 = jQuery("#pass2").val(); var username = jQuery("#username").val(); var strength = passwordStrength(pass1, username, pass2); updateStrength( siła);                 });             }         }); function updateStrength(siła){ var status = new Array('krótki', 'zły', 'dobry', 'silny', 'mismatch'); var dom = jQuery("#pass-siły-wynik"); switch(siła){ przypadek 1: dom.removeClass().addClass(status[0]).text('Zbyt krótki'); przerwanie; przypadek 2: dom.removeClass().addClass(status[1]).text("Złe hasło"); przerwanie; przypadek 3: dom.removeClass().addClass(status[2]).text("Dobre hasło"); przerwanie; przypadek 4: dom.removeClass().addClass(status[3]).text("Silne hasło"); przerwanie; przypadek 5: dom.removeClass().addClass(status[4]).text("Niezgodność"); przerwanie; default: //alert('coś jest nie tak!'); } } Dzięki @krembo99 za wysłanie mnie we właściwym kierunku. Oto kod źródłowy miernika siły, jeśli ktoś musi go zobaczyć. Jest wewnątrz `wp-admin/js/password-force-meter.dev.js`.


title: Niestandardowe WP_Query dla wyników wyszukiwania WordPress z meta_query

text: Używam niestandardowego zapytania do generowania wyników wyszukiwania. Kod, którego używam, działa idealnie bez zmiennych meta_query w mojej tablicy argumentów. Próbuję porównać wiele pól niestandardowych z „LIKE”. Odniesienia do `$per_page` i `$sort_by` $paged = (get_query_var('page')) ? get_query_var('strona') : 1; $na stronę = ($_REQUEST['na_stronę']) ? $_REQUEST['na_stronę'] : 15; $sort_by = ($_REQUEST['sort_by']) ? $_REQUEST['sort_by'] : 'najlepsze'; Tablica argumentów zapytania: $default = array( 's' => $search, 'paged' => $paged, 'post_type' => 'page', 'suppress_filters' => false, 'posts_per_page' => $per_page, 'meta_key' => '_wp_page_template', 'meta_value' => 'lois_product.php', 'meta_query' => array( 'relation' => 'OR', array( 'key' => 'lois_prodpage_color', 'value' => $search, 'compare' => 'LIKE' ), array( 'key' => 'lois_prodpage_brand', 'value' => $search, 'compare' => 'LIKE' ) ) ); Potem po prostu wywołuję argumenty, jak można by się spodziewać. $products = new WP_Query($default); Pętla itd... Więc jak widać... całkiem proste rzeczy szczerze mówiąc. Po prostu nie mogę zrozumieć, dlaczego zwraca 0 wyników, ponieważ wiem, że mam dane pasujące do określonych terminów lub kombinacji.. To jest dla niestandardowej witryny e-commerce WP, która jest zintegrowana z zewnętrznym systemem EPoS (wiem) Dowolna pomoc/wskazówki byłoby wspaniale!


title: Różne widoki/role administratora

text: Wiem, że istnieją wtyczki, które zarządzają rolami użytkowników. Czy jest jakaś wtyczka, która zarządza rolami/widokami użytkowników dla administratorów w Wordpress? Istnieje kilka wtyczek innych firm, które czasami mają własne menu. Chcę, aby niektórzy administratorzy nie widzieli tych menu stron trzecich. Czy są takie wtyczki?


title: napisz post o rejestracji użytkownika

text: Szukasz sposobu na automatyczne napisanie nowego posta za każdym razem, gdy rejestruje się nowy użytkownik. Na przykład, jeśli użytkownik B wypełni formularz rejestracyjny, automatycznie zostanie przesłany nowy post (przez niego lub przez administratora) z napisem „Użytkownik B dołączył [nazwa-witryny]”. Czy istnieje sposób, aby konto użytkownika automatycznie publikowało posty, gdy użytkownik się zarejestruje?


title: Dodawanie stronicowanego zapytania do przepisywania niestandardowego adresu URL

text:
Skonfigurowałem następujące, aby utworzyć 'ładne' typy postów i permalinki kategorii: function kdev_add_category_rules() { $post_types = array( 'kdev_photos', 'kdev_videos', 'kdev_articles'); foreach($post_types as $post_type) { $pt_obj = get_post_type_object($post_type); $pt_rewrite = $pt_obj->przepisz; $pt_slug = $pt_rewrite['slug']; add_rewrite_rule('^'.$pt_slug.'/category/([^/]*)/?','index.php?post_type='.$post_type.'&category_name=$matches[1]','top') ; } } add_action( "init", "kdev_add_category_rules" ); To działa świetnie. Kiedy odwiedzam sitename.com/photos/category/landscape/ otrzymuję wszystkie „zdjęcia” w kategorii „krajobraz”. Niestety moja paginacja na tych stronach jest zepsuta. Chcę, aby sitename.com/photos/category/landscape/page/2 wyświetlała drugą stronę w tym zapytaniu. Obecnie odświeża tylko tę samą stronę. Po sprawdzeniu zapytania paged=1. Próbowałem następujących, ale moja wiedza o wyrażeniach regularnych jest słaba. add_rewrite_rule('^'.$pt_slug.'/category/([^/]*)/page/([^/]*)/?','index.php?post_type='.$post_type.'&category_name=$ dopasowania[1]&paged=$matches[2]','top'); Jaka jest prawidłowa reguła przepisywania? # Postęp Co ciekawe, usunięcie pierwszej 'add_rewrite_rule' pozwala nowej działać (ale oczywiście przerywa wszystkie inne przepisania). Tj. /photos/category/test-category/page/2/ będzie działać, ale /photos/category/test-category/ nie. # EDIT: Dodatkowe informacje Odświeżyłem ładowanie permalinków! W witrynie sitename.com/photos/category/landscape/page/2/ `get_query_var('paged')` zwraca `1`. /category/test-category/page/2/ i /photos/page/2/ działają. Typy postów tworzone za pomocą: // Zarejestruj funkcję Custom Post Type custom_post_type() { $labels = array( 'name' => _x( 'Zdjęcia', 'Ogólna nazwa typu posta', 'text_domain' ), 'singular_name' => _x( 'Zdjęcie', 'Typ Postu Pojedyncza Nazwa', 'text_domain' ), 'menu_name' => __( 'Zdjęcia', 'text_domain' ), 'parent_item_colon' => __( 'Rodzic Photo:', 'text_domain' ), 'all_items' => __( 'Wszystkie zdjęcia', 'text_domain' ), 'view_item' => __( 'Wyświetl zdjęcia', 'text_domain' ), 'add_new_item' => __( 'Dodaj nowe zdjęcie', ' text_domain' ), 'add_new' => __( 'Nowe zdjęcie', 'text_domain' ), 'edit_item' => __( 'Edytuj zdjęcie', 'text_domain' ), 'update_item' => __( 'Aktualizuj zdjęcie', 'text_domain' ), 'search_items' => __( 'Wyszukaj zdjęcia', 'text_domain' ), 'not_found' => __( 'Nie znaleziono zdjęć', 'text_domain' ) , 'not_found_in_trash' => __( 'Nie znaleziono zdjęć w Koszu', 'text_domain' ), ); $args = array( 'label' => __( 'kdev_photos', 'text_domain' ), 'description' => __( 'Udostępnione zdjęcia', 'text_domain' ), 'labels' => $labels, 'supports' = > array( 'title' ), 'taxonomies' => array( 'category', 'post_tag' ), 'hierarchical' => false, 'public' => true, 'show_ui' => true, 'show_in_menu' => true, 'show_in_nav_menus' => true, 'show_in_admin_bar' => true, 'menu_position' => 5, 'menu_icon' => '', 'can_export' => true, 'has_archive' => true, 'rewrite' => array( 'slug' => 'photos' ), 'exclude_from_search' => false, 'publicly_queryable' => true, 'capability_type' => 'strona', ); register_post_type( 'kdev_photos', $args ); } Witryna używa motywu Roots, który wykorzystuje technikę zawijania motywów Scribu. Pierwszym szablonem o nazwie jest base.php: <?php if(is_front_page()) { wp_redirect( get_bloginfo('url').'/photos/', 302 ); Wyjście; } ?> <?php get_template_part('szablony/głowica'); ?> <?php $post_type_query = get_query_var( 'post_type' ); if(!is_array($post_type_query)) $post_type = $post_type_query; ?> <ciało <?php body_class($post_type); ?>> <?php do_action('get_header'); // Użyj paska nawigacyjnego Bootstrap, jeśli jest włączony w config.php if (current_theme_supports('bootstrap-top-navbar')) { get_template_part('templates/header-top-navbar'); } else { get_template_part('szablony/nagłówek'); } ?>

 <div class="główna <?php echo roots_main_class(); ?>" role="główna"> < ?php to ścieżka_szablonu_korzenia(); ?>
 <?php if (roots_display_sidebar()) : ?> <aside class="sidebar <?php echo roots_sidebar_class(); ?>" role="complementary" >
 <?php include roots_sidebar_path(); ?>
  <?php endif; ?>

 <?php get_template_part('szablony/stopka'); ?>   Który następnie wywołuje index.php: <?php get_template_part('szablony/strona', 'nagłówek'); ?> <?php $paged = (get_query_var('stronicowany')) ? get_query_var('stronicowane') : 1; ?>
Aktualnie przeglądana strona <?php echo $paged; ?>
 <?php if (!have_posts()) : ?>
 <?php _e('Przepraszamy, nie znaleziono wyników.', 'roots'); ?>
 <?php get_search_form(); ?> <?php endif; ?> <?php $post_type_query = get_query_var( 'post_type' ); if($post_type_query == 'kdev_photos') $use_grid = TRUE; w przeciwnym razie $use_grid = FALSE; ?> <?php if($use_grid) echo '
'; while (have_posts()) : the_post(); if($use_grid) get_template_part('szablony/treść', 'zdjęcie'); w przeciwnym razie get_template_part('szablony/treść', get_post_format()); koniec; if($use_grid) echo '
'; ?> <?php globalne $wp_query; $duży = 999999999; // potrzebujesz nieprawdopodobnej liczby całkowitej $pag_links = paginate_links( array( 'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ), 'format' => '?paged=%# %', 'end_size' => 1, 'mid_size' => 1, 'current' => max( 1, get_query_var('paged') ), 'total' => $wp_query->max_num_pages, ) ); echo '
'.$pag_links.'
'; ?>


title: Inny szablon oparty na HTTP Referer

text: He Guys, szukałem sposobu, aby pokazać inny szablon strony oparty na HTTP Referer, a może User Agent lub cokolwiek innego. Planuję Galerię Obrazów, która powinna być pokazana w Fancybox. Moim pomysłem jest użycie szablonu, który zawiera tylko `pętlę` i wszystko, czego potrzebuję, aby poprawnie zbudować galerię (bez żadnych plików nagłówka i stopki) i załadować go do mojego Fancybox. Ale co z wyszukiwarkami i użytkownikami z wyłączonym JavaScript. Nie widzą niczego lub tylko strony bez kontekstu strony, takiej jak Navi itp. Jak mogę zapobiec temu problemowi? Jakieś pomysły


title: Usuń ochronę hasłem ze wszystkich postów

text: Więc popsułem mojego bloga (QBobble). Na szczęście miałem kopię zapasową SQL, więc ponownie zainstalowałem Wordpress i zaimportowałem moją bazę danych SQL. Niestety hasło chroniło wszystkie moje posty. Wiem, że mogę ręcznie odblokować je hasłem, przechodząc do Postów < Edytuj i edytuj widoczność na „publiczne”, ale nie chcę tego robić dla wszystkich moich postów, chcę to zrobić dla wszystkich naraz . Jak mogę to zrobić? Ktoś powiedział, że możesz to zrobić w działaniach zbiorczych > Edytuj, ALE zmiana statusu na „publiczny” w działaniach zbiorczych nie działa. Jakieś pomysły? Pozbywało się też fragmentów każdego postu. Teraz po prostu czytają NULL. Czy istnieje sposób, aby automatycznie dodać je z powrotem? Nawiasem mówiąc, używam 3.3.1. Dziękuje wszystkim!


title: Miliony rzędów — możliwe rozwiązania?

text: Mam niestandardowy CMS, który chcemy przenieść do Wordpressa. (Widzę, że zadajesz sobie pytanie, dlaczego nie pozostać przy niestandardowym CMS? Cóż, jest przestarzały, niezgrabny i staje się zbyt kłopotliwy w utrzymaniu; jest też wiele funkcji WP, z których naprawdę chcielibyśmy skorzystać zaleta). Oto problem – mamy główny rodzaj treści (nazwijmy je wycieczkami). Każda wycieczka ma około 30 powiązanych z nią metadanych (wszystkie aktualnie różne kolumny w tabeli Tours). Obecnie mamy około 600 000 wycieczek. Z każdą wycieczką powiązanych jest kilka różnych typów obrazów, od obrazów wnętrz, przez elementy zewnętrzne, po plany pięter itp. Każdy obraz ma około 10 powiązanych z nim metadanych (ponownie, wszystkie aktualnie kolumny w tabeli Obrazy). Obecnie w naszym systemie mamy około 7 milionów obrazów. Prawdopodobnie widzisz nasz problem -- jeśli umieścimy wszystkie trasy i obrazy w domyślnej tabeli wp_posts i wp_postmeta, otrzymamy miliony wierszy w wp_posts i znacznie więcej niż w tabeli wp_postmeta. Nie jestem pewien, ile mySQL może obsłużyć, jeśli chodzi o liczbę wierszy, ale wydaje się prawdopodobne, że osiągniemy punkt spowolnienia, szczególnie podczas wykonywania zapytań do tabeli wp_postmeta. Moje pytania: 1) Jedną z omówionych przez nas możliwości jest przechowywanie tylko „aktywnych” wycieczek w wp_posts i archiwizowanie starszych tras w osobnej tabeli. Czy ktoś wie o jakichkolwiek wtyczkach, które robią coś takiego? 2) Inną możliwością jest umieszczenie Tours w tabeli wp_posts i oddzielenie obrazów. Jedną z rzeczy, których naprawdę chcielibyśmy użyć, jest program do przesyłania obrazów Wordpress. Czy mimo to można zastąpić miejsce, w którym zapisywane są dane obrazu? 3) Jakieś inne sugestie, jak najlepiej zaimplementować tak dużo danych w Wordpress?


title: ocena artykułów do celów wewnętrznych

text: Zaczęliśmy od wielu użytkowników, którzy piszą artykuły na stronę. Chcemy teraz ocenić każdy artykuł wewnętrznie, aby mieć przegląd użytkowników z najlepszymi artykułami. Czy ktoś zna wtyczkę do wewnętrznego oceniania artykułów, aby nie pojawiały się na stronie, a jedynie w dashboardzie WP. Dzięki Tom


title: Statyczna strona główna jako rodzic ze stronami podrzędnymi?

text: Próbuję utworzyć statyczną stronę główną zawierającą strony podrzędne, tak aby menu wyglądało następująco: * * * Informacje (statyczna strona główna, strona nadrzędna „CV” i „Adres”) -CV (potomek „Informacje” ") -Adres (dziecko "O mnie") Inna strona 1 Inna strona 2 (rodzic "sub 1" i "sub 2") -sub 1 (dziecko "Innej strony 2") -sub 2 (dziecko "Inne strona 2") * * * To, co działa, to użycie "O nas" jako rodzica. Mój problem polega na tym, że "CV" i "Adres" są wyświetlane w menu jako osobne pozycje, a nie jako elementy podrzędne "O nas", mimo że ich wpis nadrzędny poprawnie mówi "O". Oto menu: * * * O (statyczna strona główna) Inna strona 1 Inna strona 2 (rodzic "sub 1" i "sub 2") -sub 1 (dziecko "Innej strony 2") -sub 2 (dziecko "Inna strona 2") Adres CV * * * Co tu przeoczam? Dzięki ab banda! tef


title: Dodanie post_type do zapytania poprzez pre_get_posts, z nieskończonym przewijaniem

text: Robię tu coś złego. Próbuję dodać niestandardowy typ postu, zewnętrzne wideo, do głównego zapytania w blogu we wszystkich przypadkach. Działa na głównej stronie bloga _dla pierwszego ładowania postów_, ale niestandardowy typ posta jest ignorowany w kolejnych postach ładowanych przez nieskończone przewijanie. Następnie ładowane są tylko „zwykłe” posty. Używam nieskończonego przewijania w wersji wtyczki wp. Oto moja funkcja: // dodaj zewnętrzne wideo do funkcji pętli add_external_videos_to_query( $query ) { if ( is_main_query() && is_home() ) set_query_var ( 'post_type', array('post','external-videos') ); } add_action( 'pre_get_posts', 'add_external_videos_to_query' ); Również pozornie powiązane - niestandardowy post_type jest ignorowany przez nieskończone przewijanie nawet na stronie archiwum dla tego niestandardowego typu postu. Innymi słowy, na stronie archiwum dla „zewnętrznych filmów” ładuje się pierwsza strona wpisów „zewnętrznych filmów”, ale żadne inne posty tego typu nie są ładowane za pomocą nieskończonego przewijania. Nieskończony scroll działa poprawnie dla wszystkich innych archiwów, które testowałem. Nawiasem mówiąc, przeczytałem tutaj odpowiedź Mike'a Schinkela i myślę, że używam podobnej techniki, ale nie jestem pewien, czy potrzebuję **`global $wp_the_query`** czy nie. W innej sytuacji, ale także próbując nakłonić pre_get_posts do uruchomienia każdego zapytania, powiedział: > Zasadniczo to, czego szukasz, to globalna zmienna $wp_the_query >, która jest ustawiona na wartość głównego zapytania. Może nie być idealnym rozwiązaniem dla > 100% przypadków, ale prawdopodobnie będzie działać dobrze w 99% przypadków: > > > add_action( 'pre_get_posts', 'custom_post_count' ); > funkcja custom_post_count ($zapytanie){ > globalna $wp_the_query; > if ( $wp_the_query === $query ) { > $query->set( 'posts_per_page', 5 ); > } > return $zapytanie; > }; >


title: Łączysz kategorie postów i kategorie linków?

text: Aby uzyskać pojedynczy indeks zarówno wewnętrznych postów, jak i linków zewnętrznych na ten sam lub pokrewny temat/temat, czy można połączyć kategorie postów i kategorie linków? Chciałbym móc zagłębić się w jedną hierarchię i znaleźć wszystkie zebrane informacje na dany temat, zarówno zewnętrzne, jak i wewnętrzne w witrynie. Dziękuję.


title: porównaj format daty w polu niestandardowym

text: Jak mogę pracować z tym kodem, aby pracować z formatem daty Y-n-j Wartość start_date = 2011-1-20 end_date = 2011-1-30 Oto oryginalna funkcja pochodząca z tego zapytania między dwiema wartościami meta? funkcja date_check_join ($join) { global $wpdb; $join .= " DOŁĄCZ ".$wpdb->postmeta." AS data startowa WŁĄCZONA (".$wpdb->posts.".ID = startdate.post_id AND startdate.meta_key = 'start_date') DOŁĄCZ ".$wpdb-> postmeta." AS enddate ON (".$wpdb->posts.".ID = enddate.post_id AND enddate.meta_key = 'end_date')"; zwróć $dołącz; } funkcja date_check_where( $where ) { $today = date('Y-n-j'); /* Zmieniam ten format na date('Y-n-j')*/ $where .= " AND startdate.meta_value <= $today AND enddate.meta_value >= $today"; zwróć $gdzie; } Ta funkcja działa z `UNIX TIME STAMP date('Ymd')` i kiedy zmieniam format daty nie działa z `date('Y-n-j')` kredytem @goldenapples


title: Wiele automatycznie generowanych pokazów slajdów / suwaków w każdym (niestandardowym) poście?

text: Pracuję nad stroną dla klienta, która będzie miała niestandardowy typ postu (domy). Chciałabym, aby klient mógł dodawać nowe posty, które idealnie zawierałyby wiele zdjęć, w różnych „kategoriach”, dla każdego domu (tj. wstępna budowa, prace wykończeniowe, ukończony dom). Każda inna kategoria miałaby wtedy własny suwak na tym „poście”. Rozważałem użycie wtyczki Premium Slider, która oferuje wiele suwaków i zawiera metabox w każdym poście, ale zdecydowanie wymagałaby modyfikacji, aby pasowała do moich wymagań. Jakieś pomysły, jak najlepiej to zrobić?


title: Wyświetlaj miniaturę tylko wtedy, gdy istnieje żądany rozmiar

text: Kiedy używam funkcji, które pobierają i wyświetlają miniaturę posta, wyświetlą żądaną miniaturę w określonym przez ciebie rozmiarze, ale jeśli ten rozmiar nie istnieje, wyświetlą miniaturę w oryginalnym rozmiarze i zmuszą przeglądarkę do zmiany jej rozmiaru. Jak mogę zmusić ich do wyświetlania symbolu zastępczego, takiego jak „brak obrazu”, jeśli żądany rozmiar nie istnieje?


title: Formatowanie komentarzy za pomocą comment_content

text: Wyświetlam komentarz poza szablonem komentarza, pobieram go za pomocą `get_comments()` i powtarzam `comment_content`. Mój problem polega na tym, że komentarz traci formatowanie (akapity, podziały wierszy itp.). W moim szablonie używam TinyMCEComments (TinyMCE na formularzu komentarza). Ktoś wskazał mi to rozwiązanie, ale u mnie nie działa. <?php echo wpautop($comment->comment_content);?>


title: Taksonomia niestandardowa jako rozwijane w admin

text: Stworzyłem niestandardowy typ posta (nazywany Sponsorami) z połączoną z nim dodatkową taksonomią o nazwie „Typ”. Zasadniczo wszystko działa idealnie, ale bardzo chciałbym, aby moja taksonomia „Typ” była rozwijanym menu zamiast zwykłego „wpisz i wyszukaj lub utwórz nowy”. Powodem jest to, że stworzyłem sześć różnych „Typów” w taksonomii i ludzie, którzy będą tworzyć nowych „sponsorów”, powinni wybrać tylko jeden z tych sześciu dla każdego nowego postu sponsora. Wypróbowałem kilka samouczków i przewodników znalezionych przez Google, ale żaden jeszcze nie zadziałał. Niestandardowy typ posta i niestandardowa taksonomia są tworzone przez wtyczkę „Custom Post Type UI”. Do tej pory próbowałem to: add_action('restrict_manage_posts','my_restrict_manage_posts'); function my_restrict_manage_posts() { global $typenow; if ($typenow=='sponsors'){ $args = array( 'show_option_all' => "Pokaż wszystkie kategorie", 'taksonomia' => 'typ', 'nazwa' => 'typ' ); wp_dropdown_categories($args); } } add_action( 'żądanie', 'moje_żądanie' ); function my_request($request) { if (is_admin() && $GLOBALS['PHP_SELF'] == '/wp-admin/edit.php' && isset($request['post_type']) && $request['post_type' ]=='sponsorzy') { $request['term'] = get_term($request['type'],'type')->name; } return $żądanie; } I to add_action( 'restrict_manage_posts', 'my_restrict_manage_posts' ); function my_restrict_manage_posts() { // wyświetlaj tylko te filtry taksonomii na żądanych niestandardowych listach post_type global $typenow; if ($typenow == 'sponsors' || $typenow == 'type') { // utwórz tablicę slug taksonomii, według których chcesz filtrować - jeśli chcesz pobrać wszystkie taksonomie, możesz użyć get_taxonomies() do zbudowania list $filters = array('title_sponsor', 'platin-sponsor', 'guld-sponsor', 'diamant-sponsor'); foreach ($filters as $tax_slug) { // pobierz obiekt taksonomii $tax_obj = get_taxonomy($tax_slug); $tax_name = $tax_obj->etykiety->nazwa; // pobierz tablicę obiektów terminów na taksonomię $terms = get_terms($tax_slug); // wyświetl html dla listy rozwijanej taksonomii echo "<select name='$tax_slug' id='$tax_slug' class='postform'>"; echo "<option value=''>Pokaż wszystkie $tax_name</option>"; foreach ($terms as $term) { // wypisz każdy wiersz opcji wyboru, sprawdź w ostatnim $_GET, aby wyświetlić aktualnie wybraną opcję echo '<wartość opcji='. $term->slug, $_GET[$tax_slug] == $term->slug ? ' selected="wybrane"' : '','>' . $term->nazwa .' (' . $term->liczba .')</option>'; } echo "</select>"; } } } Ale jak powiedziałem, żaden z nich nie zadziałał. Każda pomoc lub sugestie byłyby bardzo mile widziane. Dzięki Z poważaniem \- Mestika


title: Niestandardowa pętla o jeden post

text:
W ramach mojej pętli chcę wyświetlić 9 postów, które wykluczają kategorie X, Y, Z i wszystkie przyklejone posty. Między 3 a 5 postem chciałbym umieścić przyklejony post z niestandardowym szablonem. Poniższy wpis działa, z wyjątkiem tego, że traktuje przyklejony post jako 4 posty z pierwszej pętli, co skutkuje brakiem jednego zwykłego posta. Muszę użyć WP 3.0.3 <?php if (have_posts()) : ?> <?php $count = 0;?> <?php $sticky_posts = get_option('sticky_posts'); $arguments = array( 'posts_per_page' => 9, 'post__not_in' => $sticky_posts, 'category__in' => array(1,2,3,4,5) ); ?> <?php query_posts( $arguments );?> <?php while (have_posts()) : the_post(); ?> <?php $liczba++; ?> <?php if ($liczba == 4) : ?> <?php $sticky = get_option('sticky_posts'); $args = array( 'posts_per_page' => 1, 'post__in' => $sticky ); ?> <?php query_posts( $args );?> <?php while (have_posts()) : the_post(); ?>
Najnowszy przyklejony post
 <a href="<?php the_permalink(); ?>"><?php the_title(); ?> <?php the_fragment(); ?> <?php koniec; ?> <?php wp_reset_postdata(); ?> <?php else : ?>
Zwykły post
 <a href="<?php the_permalink(); ?>"><?php the_title(); ?> <?php the_fragment(); ?> <?php endif; ?> <?php koniec; ?> <?php endif; ?>


title: Pokaż wiadomość według identyfikatora tagu dla niestandardowych typów postów

text: W single.php muszę mieć kilka warunków, które pytają, w jakim tagu znajduje się post, abym mógł wyświetlić komunikat, nie jestem pewien, jak to zrobić, ale to jest idea: jeśli post jest powiązany z tagiem ID '2', powiedz "cześć koleś elseif w Tag ID '3' powiedz "właściwe bo" albo "nic do powiedzenia" **taxonomy = my_entries** **post_type= myposts** Muszę sprawdzić, czy post jest powiązany z TAG ID "2" Wtedy pokaże się dana wiadomość Jeśli post w TAG ID "3" pokaże inną pewną wiadomość nic innego


title: Zmień permalink na podstawie kategorii postów

text: Szukam sposobu na zmianę struktury permalinka w oparciu o kategorię, w której znajduje się post. Jeśli post znajduje się w kategorii "blog", chciałbym, aby permalink był /blog/%postname%/ i jeśli jest jakikolwiek inny kategoria po prostu /%postname%/. Kiedyś istniała wtyczka o nazwie Advanced Permalinks, która mogła to wszystko zrobić za Ciebie, ale nie jest już obsługiwana. Zbadałem ten temat i nie mogę znaleźć dobrego sposobu na samodzielne zakodowanie tego ani żadnych wtyczek, które wykonują zadanie. Każda pomoc lub sugestie będą mile widziane.


title: Uzyskaj numer komentarzy w wątkach

text:
Do numerowania komentarzy używam wtyczki Greg's Threaded Numbering. Właściwie wyświetlam numer obok każdego komentarza nadrzędnego (bez numerów komentarzy w wątkach). Mam 2 problemy, które próbowałem już rozwiązać, ale bez rezultatu: * wyświetlam komentarz na górze w innym układzie, numerację muszę zacząć od #2. wydaje się łatwym zadaniem, ale nie znalazłem sposobu na modyfikację kodu wtyczki. * Wyświetl łączną liczbę komentarzy w wątkach dla każdego komentarza zawierającego wątki. Przykład: KOMENTARZ 1 \----------------1.1 \----------------1.2 \------------1.3 całkowita liczba komentarzy w wątkach = 3 KOMENTARZ 2 \------------2.1 \------------2.2 całkowita liczba komentarzy w wątkach = 2 itd..... Używam już poniższego kodu do uzyskać całkowitą liczbę rodziców. Mogę również uzyskać dzieci, ale jest to suma, muszę wyświetlić liczbę dzieci każdego komentarza, jak w przykładzie $number_of_parents = c_parent_comment_counter($post->ID); $liczba_dzieci = $post->liczba_komentarzy - $liczba_rodziców; Dziękuję! EDYCJA: zgodnie z żądaniem tutaj jest funkcja zwrotna wp_list_comments. Przepraszam za bałagan, nie jestem programistą, wyczyści kod po zakończeniu pracy :) ## Function: Basic Callback Function From WP Codex (http://codex.wordpress.org/Template_Tags/wp_list_comments), styczeń 2009 function gtcn_basic_callback($comment, $args, $depth) { // bez zmian poza tym, że dodaliśmy w wywołaniu gtcn_comment_numbering $GLOBALS['comment'] = $comment; ?> <li <?php comment_class(); ?> id="li-comment-<?php comment_ID() ?>"> <?php if( empty( $comment->comment_parent ) ) { //jeśli komentarz nie ma rodzica, to jest L1? >
<?php echo gtcn_comment_numbering($comment->comment_ID, $args); ?>
 <?php } ?> <div id="komentarz-<?php komentarz_ID(); ?>">

 <?php if( empty( $comment->comment_parent )) { ?><?php echo get_avatar($comment,$size='60'); ?><?php } else { ?><?php echo get_avatar($comment,$size='30'); ?><?php } ?>

<?php printf(('%s '), get_comment_author_link()) ?>
 <?php if( empty( $comment->comment_parent ) ) { ?>

 <img src="<?php bloginfo('template_url'); ?>/images/ico-points.png" />3333

 <img src="<?php bloginfo('template_url'); ?>/images/ico-level.png" />livello

 <?php } else { ?><?php } ?>
 <?php if ( is_user_logged_in() ) { if( empty( $comment->comment_parent ) ) {?>

Vota la risposta:
 <?php { //jeśli komentarz nie ma rodzica, to jest to L1 if(function_exists(ckrating_display_karma)) { ckrating_display_karma(); } } ?>
 <?php }} else { if( empty( $comment->comment_parent )) { ?>

Rejestracja na głos

 <?php }} ?>

 <?php if ($comment->comment_approved == ' 0') : ?> <?php _e('Twój komentarz oczekuje na moderację.') ?>
 <?php endif; ?> <?php comment_text() ?>
 <?php comment_reply_link(array_merge( $args, array('reply_text' => 'COMMENTA LA RISPOSTA', 'depth' => $depth, ' max_depth' => $args['max_depth']))) ?>

<?php if( empty( $comment->comment_parent ) ) { ?>Risposta inserita <?php } else { ?> Komentarz wstawiany <?php } ?> <?php echo time_ago_comment(); ?><?php edit_comment_link(('- modifica'),' ','') ?>

 <?php } // zakończenie podstawowej funkcji zwrotnej


title: Paginacja głównej pętli CPT w single.php

text:
Mam pojedynczy szablon CPT (single-work.php), w którym muszę powtórzyć pętlę postów znalezionych w głównej pętli (archive-work.php). Używam tego samego kodu pętli w obu szablonach (jak również w front-page.php, wszystkie działają poza single-work.php): <?php if ( get_query_var('paged')) { $paged = get_query_var(' stronicowana'); } else if ( get_query_var('strona')) { $paged = get_query_var('strona'); } else { $paged = 1; } $args = array( 'post_type' => 'work', 'posts_per_page' => 8, 'paged' => $paged, 'orderby' => 'menu_order', 'order' => 'ASC' ); $wp_query = nowe WP_Query($args); if( $wp_query->have_posts() ) : while( $wp_query->have_posts() ) : $wp_query->the_post(); get_template_part('zasoby/pętle/pętla', 'praca'); koniec; // koniec podczas postów echo '
'; next_posts_link('Starsze'); echo '
'; endif; // zakończ jeśli posty wp_reset_query(); ?> Powód tylko next_posts_link(); to dlatego, że zamierzam używać nieskończonego przewijania do wciągania postów, eliminując potrzebę poprzedniego_posts_link(); Jednak do celów testowych nieskończone przewijanie jest wyłączone. Wartość href linku „Starsze” pokazuje „http://example.com/praca/najnowszy-post/strona/2/”, ale kliknięcie linku „Starsze” po prostu odświeża stronę. Po włączeniu nieskończonego przewijania te same posty 8 są ciągle powtarzane. Czy jest jakiś sposób, aby w jednym szablonie uzyskać odpowiednią paginację? Dzięki, **Update:** Powinienem również zauważyć, że próbowałem użyć: $paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'stronicowane' ) : 1; ale niestety to też nie działa :(


title: Responsywny projekt motywu: w jaki sposób pokaz slajdów na komputerach stacjonarnych/tabletach i statyczne zdjęcie na telefonie komórkowym przy użyciu tego samego szablonu?

text: Buduję swoją pierwszą responsywną witrynę WP z własnym niestandardowym motywem WP. Szablony podstawowe są częściowo płynne, częściowo stałe. Dzięki temu udało mi się stworzyć tylko 3 „wersje”, wersję desktopową, tabletową i mobilną. Wszystkie zmiany następują z powodu zapytań o media. (Rozmiary to 768 do 1200 px dla komputerów stacjonarnych, 530 do 767 dla tabletów, 300 do 529 dla telefonów komórkowych.) Strona główna (która ma własny szablon) pokaże pokaz slajdów. Pokaz slajdów twierdzi, że jest responsywny (jeszcze go nie skonfigurowałem) i spodziewam się, że będzie działał w rozmiarach tabletów. Ale kiedy dochodzę do rozmiaru mobilnego, chcę mieć tylko statyczne zdjęcie. Nie chcę po prostu używać „display:none” do pokazu slajdów, ponieważ nadal będzie to zajmować miejsce/moc dla telefonów komórkowych. CHCĘ zachować wszystkie wersje w tych samych szablonach, więc myślę, że będę potrzebować jakiegoś php lub javascript, aby to się stało. (Chyba że istnieje inny sposób, o którym byłbym zachwycony!) Czy ktoś może pomóc z kodem? Mam div pokazu slajdów w CSS: #slideshow { height: 296px; margines: 20px 20px 10px 20px; wypełnienie: 0; kolor tła: #f00; }/*nie ustawiając szerokości, pole sshow wypełnia przestrzeń bez marginesów*/, aw szablonie shortcode pokazu slajdów lub kod szablonu zostanie umieszczony między znacznikami div otwierania i zamykania pokazu slajdów. Ale chciałbym też umieścić tam zdjęcie do wersji mobilnej. Więc myślę, że potrzebowałbym czegoś w rodzaju „jeśli 529px lub więcej, zdobądź pokaz slajdów; jeśli mniej, zdobądź zdjęcie”, prawda? Nie jestem programistą php ani javascript, ale jestem świetny w wycinaniu i wklejaniu! Witryna jest dostępna pod adresem http://66.147.244.110/~rdbikeco/ \-- jesteśmy teraz na etapie dodawania zawartości strony i blog wymaga uwagi, a paski boczne wymagają pracy itp. Ale strony powłoki działają, a zawartość jest ładuje się jak piszę. Pomoc bardzo ceniona!


title: Zadania Crona się powtarzają

text: Jeśli mam funkcję ustawioną na uruchamianie co 5 minut za pośrednictwem zadania cron WP i mam tylko jednego gościa w ciągu dnia, czy jego wizyta wyzwala tylko jedno uruchomienie tej funkcji, czy wszystkie uruchomienia, które zostały zgromadzone od ostatniej wizyty? Zadanie cron, które mam, uruchamia funkcję, która pobiera kanały z innej witryny.


title: Mam niestandardowy typ posta z wieloma postami. Jak podzielić listę na wiele stron?

text: Mam około 100 postów i chcę tworzyć strony, które pokazują tylko 10 na każdym. Jak bym się do tego zabrał?


title: Responsywne obrazy — generowanie wielu obrazów z przesłania kontrolnego Theme Customizer?

text: Tak więc, po przejrzeniu kodu wygląda na to, że filtr `image_make_intermediate_size` nie jest wywoływany przez różne klasy `WP_Customize_Control()` w `WP_Customize_Image_Control()` lub jest nadrzędny `WP_Customize_Upload_Control()`. Chcę automatycznie generować obrazy o różnych rozmiarach w celu responsywnego wyświetlania obrazów i muszę wykonać funkcję `image_make_intermediate_size()` z niektórymi niestandardowymi rozmiarami, które są specyficzne dla mojej rozszerzonej niestandardowej kontroli. Po prostu nie jestem pewien, jak upewnić się, że przesłane obrazy wywołują tę funkcję głównie dlatego, że nie byłem w stanie wyśledzić, gdzie i jak funkcja przesyłania `WP_Customize_Control()` jest "odłączona" od domyślnego zachowania przesyłania, w którym funkcja jest normalnie wykonany. Zwróć uwagę, że sposób, w jaki to działa, jest oczywiście najlepszą opcją, nie chcę, aby każdy obraz przesłany za pomocą dostosowywania motywów automatycznie generował wszystkie domyślne rozmiary obrazów, ale w moim przypadku użycia wolę używać natywnych funkcji i po prostu przekazywać unikalne parametry rozmiaru do `image_make_intermediate_size()`.


title: załaduj więcej postów według kategorii

text: Jak widać tutaj, ładuję według kategorii w każdej karcie, którą mam i wyświetlam w sumie 10 postów na każdą kartę, którą chcę ustawić, gdy 10 postów jest już skończonych. chcę dodać przycisk ładuj więcej na dole 10 postów, które zrobiłem, ale widz musi zobaczyć resztę postów w innym miejscu dla określonej kategorii, więc chcę pokazać więcej postów z tej kategorii, pozostając w tej ta sama strona ładuje więcej postów w tej zakładce. oto co robię, aby wyświetlić każdą kartę według kategorii i całkowitej liczby postów <?php $rightbox = get_posts('&cat=8&showposts=10'); foreach($rightbox jako $post) : setup_postdata($post); ?> mam nadzieję, że ktoś może mi pomóc Oto cały kod z zakładki http://pastie.org/7731669 dzięki


title: Post czasami nie wyświetla się na stronie

text: Mam dziwny problem. Określony post czasami nie pojawia się na mojej stronie. Więc jeśli wyczyszczę pamięć podręczną, to się pojawi. Dzieje się to tylko z jednym konkretnym postem. Nie jestem w stanie rozgryźć, na czym może polegać problem. **Nie na temat** : ten konkretny post też jest dość kontrowersyjny. Więc mam wrażenie, że ktoś próbuje to obalić. Każda pomoc byłaby bardzo mile widziana.


title: Jak oddzielić CPT od zwykłych postów?

text: Właśnie zaczynam wypełniać mój CPT. Chcę oddzielić to od zwykłych postów. Ale kiedy patrzę na zwykłe posty (w szablonie `single.php`), nawigacja Poprzedni/Następny zawiera posty CPT. Co ciekawe, posty CPT _nie_ pojawiają się na liście na stronie głównej. AKTUALIZACJA: Używam filtrów `get_previous_post_join`, `get_previous_post_where`, `get_previous_post_sort` i ich następnych odpowiedników. Wydaje się, że mają one wpływ na całą nawigację. Jak je ograniczyć, aby wpływały tylko na żądane strony? AKTUALIZACJA 2: Wprowadziłem więc zmiany w kodzie, jak opisano w mojej własnej odpowiedzi poniżej (zamknięto filtry get_previous/next_post_* w funkcji, którą wywołałem z pojedynczego szablonu CPT, przed pętlą. To jest kod we wtyczce: function aaaConsultant_set_nav_filters( ) {             add_filter('get_previous_post_join', 'aaaConsultant_get_previous_post_join_custom_sort');             add_filter('get_previous_post_where', 'aaaConsultant_get_previous_post_where_custom_sort');             add_filter('get_previous_post_sort', 'aaaConsultant_get_previous_post_sort_custom_sort');                  add_filter('get_next_post_join', 'aaaConsultant_get_next_post_join_custom_sort');             add_filter('get_next_post_where ', 'aaaConsultant_get_next_post_where_custom_sort'); add_filter('get_next_post_sort', 'aaaConsultant_get_next_post_sort_custom_sort'); ; return "INNER JOIN {$wpdb->prefix}postmeta ON (p.ID = {$wpdb->prefix}postmeta.post_id)"; } function aaaConsultant_get_previous_post_where_custom_sort($where) { global $wpdb, $post; $meta_value = get_post_meta($post->ID, 'aaaConsultant_dateofletter', prawda); return "WHERE 1=1 AND p.post_type = 'refletter' AND p.post_status = 'publish' AND {$wpdb->prefix}postmeta.meta_key = 'aaaConsultant_dateofletter' AND {$wpdb->prefix}postmeta.meta_value < ' {$meta_wartość}'"; } funkcja aaaConsultant_get_previous_post_sort_custom_sort($sort) { globalny $wpdb; return "ORDER BY {$wpdb->prefix}postmeta.meta_value DESC LIMIT 1"; } funkcja aaaConsultant_get_next_post_join_custom_sort($join) { globalny $wpdb; return "INNER JOIN {$wpdb->prefix}postmeta ON (p.ID = {$wpdb->prefix}postmeta.post_id)"; } function aaaConsultant_get_next_post_where_custom_sort($where) { global $wpdb, $post; $meta_value = get_post_meta($post->ID, 'aaaConsultant_dateofletter', prawda); return "WHERE 1=1 AND p.post_type = 'refletter' AND p.post_status = 'publish' AND {$wpdb->prefix}postmeta.meta_key = 'aaaConsultant_dateofletter' AND {$wpdb->prefix}postmeta.meta_value> ' {$meta_wartość}'"; } funkcja aaaConsultant_get_next_post_sort_custom_sort($sort) { globalny $wpdb; return "ORDER BY {$wpdb->prefix}postmeta.meta_value LIMIT ASC 1"; } A oto kod w szablonie: <?php aaaConsultant_set_nav_filters(); if (have_posts()) : while (have_posts()) : the_post(); ?> Problem polega na tym, że zwykłe posty pojawiają się w single.php, ale nawigacja cofa się do początku listy postów i nie przechodzi przez całą listę. Nie wiem, co to jest spowodowane. Spróbuję wyłączyć wtyczkę i zobaczę co daje. Również w rozterce, czy to powinno znaleźć się w nowym pytaniu, czy zostać dodane do tego, ponieważ jest to wyraźnie efekt zmian nawigacji. (Cóż, „wyraźnie” nie zostało jeszcze udowodnione, jak sądzę.) AKTUALIZACJA 3: Więc dezaktywowałem wtyczkę i nadal mam problemy z nawigacją w zwykłych postach. Zostały one właśnie wygenerowane za pomocą Kreatora danych demonstracyjnych. Ale potem wprowadziłem kilka ręcznych zmian w tabelach wp_posts i wp_postmeta, kiedy zdecydowałem się zmienić nazwę CPT. Więc te problemy mogą być wynikiem tego bałaganu. Myślę, że rozbiorę wygenerowane posty i zregeneruję. AKTUALIZACJA 4: Tak, wydaje się, że regeneracja postów rozwiązała problem. Ograniczymy to do moich własnych niezręcznych manipulacji bazami danych. Nie jestem pewien, czy chcemy usunąć aktualizacje 3 i 4 (a być może trochę także aktualizację 2). Zostawię to mędrcom StackExchange.