title: Jak mogę "uzyskać 10 następnych postów po post_id == x"?

text: Buduję aplikację mobilną, która pobiera kanał json z bloga. Na przykład mogę łatwo zapytać, aby uzyskać najnowsze 10 postów. Ale dalej chcę mieć możliwość odpytywania następnych 10. To stwarza mi problem, ponieważ podczas wyciągania pierwszych 10 mogą zostać dodane kolejne 2 posty, więc jeśli spróbuję wyciągnąć kolejne dziesięć postów, dostanę duplikaty i otrzymaj 8 unikalnych postów zamiast 10. Próbuję wymyślić sposób, w jaki mogę po prostu wycofać mój ostatni identyfikator postu i poprosić o następne dziesięć postów po id postu = x. Myślę, że technicznie dostanę kolejne 10 postów "przed" tym id, ale mam nadzieję, że wyjaśniłem moje pytanie. Aktualizacja: pobieram ostatnie posty 30 29 28 27 26 25 24 23 22 21 teraz chcę pobrać następne 10 20 19 18 17 16 15 14 13 12 11 Działa idealnie. Ale co się stanie, jeśli chcę pobrać następne dziesięć, gdy dodano x nowych postów. W tym przypadku użyjemy 3 jako x Pobierz najpierw 10 30 29 28 27 26 25 24 23 22 21 teraz następne 10 Ups. Ktoś dodał 3 nowe posty nadal próbują pobrać następne 10 23 22 21 20 19 18 17 16 15 14 Mam duplikaty 23 22 21. Chcę powiedzieć `pobierz ostatni post pobierz aka(21) i weź następne dziesięć po tym` Jak by Zrobię api w pasku adresu, aby to obsłużyć?


title: Gdzie jest określona lokalizacja motywu głównego menu w szablonie WordPress?

text:
Jestem całkiem nowy w WordPressie (pochodzę z Joomla) i mam następujące wątpliwości związane z **Lokalizacja motywu** głównego menu. Na przykład używając preinstalowanego motywu **Twenty Twelve**, jeśli w backendzie wchodzę w: **Wygląd ---> Menu ---> Zarządzaj lokalizacją** Mogę przypisać tylko moje **menu główne** do określonej **lokalizacji motywu** o nazwie **Menu główne**. Myślę, że ten obszar znajduje się w pliku **header.php** motywu **Twenty Twelve** (ponieważ moje menu główne jest pokazane w nagłówku strony), ale nie mogę go znaleźć, to jest ** header.php** content: <?php /** * Szablon nagłówka dla naszego motywu * * Wyświetla całą sekcję  i wszystko aż do
 * * @package WordPress * @subpackage Twenty_Twelve * @since Twenty Twelve 1.0 */ ?><!DOCTYPE html>    <html <?php atrybuty_języka(); ?>>   <meta charset="<?php bloginfo( 'zestaw znaków' ); ?>" /> <meta name="viewport" content="width= szerokość-urządzenia" /> <tytuł><?php wp_title( '|', prawda, 'prawo' ); ?></title> <link rel="profile" href="http://gmpg.org/xfn/11" /> <link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>" /> <?php // Wczytuje plik JavaScript HTML5, aby dodać obsługę elementów HTML5 w starszych wersjach IE. ?>  <?php wp_head(); ?>  <ciało <?php body_class(); ?>>
  <hgroup>
 <a href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="home "><?php bloginfo( 'nazwa' ); ?>

<?php bloginfo( 'opis' ); ?>
 </hgroup>
<?php _e( 'Menu' , 'dwadzieścia dwanaście' ); ?>
 <a class="assistive-text" href="#content" title="<?php esc_attr_e( 'Przejdź do treści', 'twentytwelve' ); ?>"><?php _e( ' Przejdź do treści', 'dwadzieścia dwanaście' ); ?> <?php wp_nav_menu( array( 'theme_location' => 'primary', 'menu_class' => 'nav-menu' ) ); ?>  <?php if ( get_header_image() ) : ?> <a href="<?php echo esc_url( home_url( '/' ) ); ?> "><img src="<?php header_image(); ?>" class="header-image" width="<?php echo get_custom_header()->width; ?>" height="<?php echo get_custom_header( )->wysokość; ?>" alt="" /> <?php endif; ?>
 Gdzie jest to **Menu główne** lub jak jest zdefiniowane w motywie? Tnx Andrea


title: Problem z pętlą?

text:
Dostosowuję mój motyw Twenty Twelve, aby wyświetlać pojedyncze posty z dwóch oddzielnych kategorii na mojej stronie głównej przy użyciu niestandardowego szablonu. Oto mój kod:
 <?php $catquery = new WP_Query( 'cat=26&posts_per_page=1' ); while($catquery->have_posts()) : $catquery->the_post(); the_post_thumbnail(tablica(250,300)); ?> <a href="<?php the_permalink(); ?>" title="<?php echo esc_attr( sprintf( __( 'Permalink do %s', 'twentytwelve' ), the_title_attribute( 'echo=0' ) ) ); ?>" rel="zakładka"><?php the_title(); ?> <?php the_fragment(); ?> <?php koniec; ?>

 <?php $catquery = new WP_Query( 'cat=2&posts_per_page=1' ); while($catquery->have_posts()) : $catquery->the_post(); the_post_thumbnail(tablica(250,300)); ?> <a href="<?php the_permalink(); ?>" title="<?php echo esc_attr( sprintf( __( 'Permalink do %s', 'twentytwelve' ), the_title_attribute( 'echo=0' ) ) ); ?>" rel="zakładka"><?php the_title(); ?> <?php the_fragment(); ?> <?php koniec; ?>
 Problem, z którym się zmagam, polega na tym, że pierwsza pętla działa poprawnie i wysyła posty z cat 26. Ale druga pętla z cat 2 nie wyświetla niczego. Pomoc będzie bardzo mile widziane. jakieś pomysły? Aktualizacja : dodano cały kod dla dwóch pętli. Mam też inną niestandardową pętlę dalej w dół strony, aby wyświetlić tylko miniatury najnowszych postów z określonej kategorii i to działa dobrze. Na razie wygląda to tak, że z trzech pętli na stronie pierwsza i ostatnia są wykonane perfekcyjnie, ale druga nie.


title: Diagnozowanie konfliktów wtyczek

text: Mam problemy z wtyczkami, które moim zdaniem powodują konflikty. Zrobiłem badania i trochę utknąłem. Ten konflikt wydaje się mieć tylko _krótką chwilę_ po aktualizacji rdzenia lub wtyczki. Nie od razu, ale często około 12 godzin później. Dzieje się tak, że backend przestaje odpowiadać, podczas gdy frontend wydaje się działać dzięki pamięci podręcznej. Jeśli wyłączę, a następnie ponownie włączę wtyczki (za pośrednictwem bazy danych), witryna ponownie zareaguje i pozostanie stabilna do następnej aktualizacji. Czy masz jakieś pomysły, jak mogę zdiagnozować, co jest tego przyczyną? A może są jakieś znane konflikty na tej liście? Witryna ma te wtyczki i używa zmodyfikowanego motywu tematycznego * Akismet * BackWPup * Custom Post Widget * Widgety wyświetlania * Pulpit nawigacyjny Google Analytics * Integracja wykresów Google Analytics. * Formy grawitacyjne * Tryb konserwacji * Galeria NextGEN * Fragmenty PHP * qTranslate * TinyMCE Advanced * WordPress Ken Burns Slideshow * WP Remote * WP Super Cache Z góry dziękuję Pete


title: Sortuj posty według meta klucza, który jest serializowany z innymi meta kluczami

text: Potrzebuję sortowania cen, gdzie cena to metaklucz, który jest serialisez z innymi metakluczami i przechowywany w wp_postmeta ## Potrzebuję czegoś takiego: Gdy użytkownik kliknie **darmowy** (tag Anchor) powinien pokazywać posty z ceną '0' Kiedy klikną **płatne** (tag Anchor), powinny wyświetlić posty z ceną bez wartości serializowanej meta '0' a:7:{s:19:"et_is_editor_choice";s:1:"0";s:15 :"et_fs_variation";s:1:"0";s:12:"et_fs_button";s:0:"";s:10:"et_fs_link";s:0:";s:11:"et_fs_price" ;s:0:"";s:17:"et_affiliate_link";s:0:"";s:17:"et_affiliate_text";s:0:"";}


title: Wykluczanie postów przez meta, a także utrzymywanie postów bez meta

text: **edit:** Myślę, że udało mi się to rozgryźć, sprawdź odpowiedź poniżej lub kliknij poniższy link: http://wordpress.stackexchange.com/a/51175/15809 * * * Próbowałem znaleźć sposób na wykluczenie postów z 2 kluczami meta + wartości, ale także zachować w ogóle posty bez meta. Zajrzałem do zapytania parsowania i mam to w moim `functions.php`: function filter_out_efter15_posts( $request ) { $dummy_query = new WP_Query(); $dummy_query->parse_query( $żądanie ); if ( $dummy_query->is_home() || $dummy_query->is_category('notiser')) { $request['meta_query'][0]['key'] = 'efter15'; $request['meta_query'][0]['value'] = 'Nej'; $request['meta_query'][0]['compare'] = '='; $request['meta_query'][0]['type'] = 'CHAR'; $request['meta_query'][1]['key'] = 'show_on_front_page'; $request['meta_query'][1]['value'] = 'Ja'; $request['meta_query'][1]['compare'] = '='; $request['meta_query'][1]['type'] = 'CHAR'; return $żądanie; } else { return $żądanie; } Jak widać powyżej, zapytania na stronie głównej/głównej oraz w kategorii **notiser** (tylko kategoria z postami, które mają te meta) odfiltrowują posty z kluczem meta `efter15` o wartości `Nej` i metaklucz `show_on_front_page` z wartością `Ja`. Jednak gdy przejdę do strony z tagami, powyższa funkcja niczego nie zmieni, a zatem pojawią się _all_ posty z tym tagiem. Nadal chcę, aby posty z metasami zostały odfiltrowane. Mógłbym dodać `$dummy_query->is_tag()`, ale wtedy odfiltruje wszystkie inne posty, które nie mają meta. Oczywiście nie mogę ustawić konkretnych tagów, jak w przypadku kategorii. Mam nadzieję, że zrozumiesz, co próbuję zrobić. Czy istnieje czysty i dobry sposób radzenia sobie z tym? Chciałbym ograniczyć liczbę zapytań do minimum, aw bazie danych jest ponad 20 000 postów, więc nie wiem, czy uruchamiać je wszystkie w `post__not_in`, przeczytaj, że może to trochę spowolnić. Czy muszę używać niestandardowego zapytania wybierającego? Dziękuję


title: Przypisywanie tagów do posta z poziomu interfejsu użytkownika za pomocą wtyczki tag-it jquery UI

text:
Tag-it to wtyczka jquery UI, która umożliwia przypisywanie tagów, dokładnie tak jak system tagów w stackoverflow. https://github.com/aehlke/tag-it/blob/master/README.markdown Moim celem jest umożliwienie członkom mojej witryny wordpress publikowania z poziomu interfejsu. W tym celu stworzyłem formularz z polami wejściowymi. Otrzymuję treść wejściową za pomocą `$_POST['coś']`. Aby wstawić dane postu (tytuł, treść, wartości pól niestandardowych), używam funkcji `wp_insert_post` i działa dobrze. Aby wstawić tagi dla konkretnego postu, używam funkcji `wp_set_object_terms` (ponieważ używam niestandardowego typu postu i taksonomii dla tagów). Ta ostatnia funkcja działa dobrze, jeśli przypiszę do niej kilka przykładowych wartości, ale nie mogę uzyskać wartości wejściowych tagów wejściowych utworzonych przez `tag-it`. Starałem się jak najlepiej połączyć wtyczkę z kodem PHP odpowiedzialnym za przypisywanie tagów do mojego postu w WP DB. W rzeczywistości w moim źródle kodu umieściłem:

 A ten kod jest przekształcany przez wtyczkę (po wykonaniu) do:

 <input type="text" class="ui-widget-content ui-autocomplete-input" autocomplete="off" role= "textbox" aria-autocomplete="list" aria-haspopup="true">

 Jak mogę pobrać zmienną POST z tego pola wejściowego jako tablicę, aby móc umieścić ją w parametrach z `wp_set_object_terms`? Twoja zwykła pomoc jest zawsze doceniana.\


title: Zapytanie nie sortuje DESC

text: Używam następującego zapytania: <?php $postslist = new WP_Query('meta_key=Ordermetakey&orderby=meta_value_num&order=ASC&posts_per_page=5'); Aby posortować małą listę postów na stronie głównej, aby pokazać najnowsze nowe. Musi je uporządkować według meta klucza i zrobić to DESC. Dziwne jest to, że pokazuje posty ASC, mimo że umieściłem ASC w tym zapytaniu. Wartością metaklucza jest data - znacznik czasu: Przykład: 120403 = 03-04-2012 Jak mogę sprawić, żeby to działało?


title: Niestandardowy przycisk i html z [wtyczką ustawień api]

text: Staramy się ulepszyć backend naszej małej wtyczki poprzez API ustawień i używamy do tego Tareqs http://tareq.wedevs.com/2012/06/wordpress-settings-api-php-class/ Settings API . Wydaje się, że nie wiemy, jak zaimplementować niestandardowy przycisk, który po zapisaniu ustawień uruchamia wtyczkę. To jest jeden przycisk „Zapisz” i jeden „Zapisz i wykonaj”. Ponadto w tablicy nie ma typów HTML ani zwykłego tekstu, więc nie jesteśmy pewni, jak zaimplementować rodzaj zakładki dokumentacji ze zwykłymi informacjami HTML.


title: Uzyskiwanie najnowszych postów odpowiadających elementom kategorii w niestandardowym menu

text: Próbuję utworzyć nawigację z kartami, każda karta zawierająca 5 ostatnich fragmentów postu z elementów kategorii, które są wymienione w menu niestandardowym. Planuję załadować wszystkie te posty na raz i umieścić każdą kategorię w osobnej zakładce. Wiem, jak osobno uzyskać posty i linki nawigacyjne, ale nie wiem, jak zmusić je do współpracy. Dziękuję za pomoc!


title: Dlaczego dezaktywacja wtyczki powoduje błąd: „Nie masz wystarczających uprawnień, aby uzyskać dostęp do tej strony”?

text: Niedawno dezaktywowaliśmy wtyczkę bbPress, ponieważ już jej nie używamy. Zaraz po tym żaden administrator nie może dostać się do pulpitu nawigacyjnego bez uderzenia niesławnego: „Nie masz wystarczających uprawnień, aby uzyskać dostęp do tej strony?” Próbowaliśmy usunąć WSZYSTKIE wtyczki, aby wykluczyć zależność od jednej z nich, ale tak się nie stało nie działa.


title: Usuń reguły przepisywania generowane przez wtyczkę podczas dezaktywacji

text: Mam prostą wtyczkę, taką jak następująca add_action('generate_rewrite_rules', function ($wp_rewrite) { $wp_rewrite->rules = xxx + $wp_rewrite->rules;}); if (is_admin()) { register_activation_hook( __PLIK__, function() { flush_rewrite_rules(FAŁSZ); }); register_deactivation_hook(__PLIK__, function() { flush_rewrite_rules(FAŁSZ); }); } Kiedy aktywuję tę wtyczkę, reguła przepisywania jest aktualizowana iw efekcie super! Jednak po dezaktywacji wtyczki reguła przepisywania nie może zostać automatycznie opróżniona. Muszę ręcznie opróżnić stronę z ustawieniami permalinków. Jak więc zmodyfikować kod wtyczki, aby nie było potrzebne ręczne opróżnianie podczas dezaktywacji wtyczki?


title: Jak pobrać posty, które są przechowywane w innej tabeli niż (domyślnie) wp_posts?

text: To, czego potrzebuję, to zmiana domyślnego mechanizmu tworzenia puli postów w Wordpress, abym mógł pobierać posty z innych tabel w bazie danych, a nie tylko domyślnych wp_posts i wp_postmeta. Jak to możliwe? Jestem gotów z dumą umrzeć, borykając się z konsekwencjami zmiany rdzenia Wordpressa.


title: Czy każde wydanie witryny czasopisma jest stroną statyczną?

text: Chcę stworzyć stronę internetową w stylu miesięcznika. Widzę adres URL na miesiąc, wygląda mniej więcej tak: www.magazine.com/mywebpage/2013/08 Załóżmy, że chcę utworzyć niestandardową stronę na każdy miesiąc, czy mam tworzyć strony statyczne na każdy miesiąc? Jeśli to zrobię, jak wyświetlić stronę statyczną, gdy użytkownik kliknie archiwum dat?


title: Jak zbiorczo zaktualizować dane META w postach

text: Mam prawie 50 000 postów na mojej stronie wordpress. Nigdy nie napisałem tytułu META, opisu META i słów kluczowych META. Teraz muszę je napisać pod kątem SEO. Jak mogę to zrobić w jak najkrótszym czasie? Używam wtyczki All in one SEO.


title: Używanie warunków OR w meta_query dla argumentu query_posts

text: Szukałem tego wysoko i nisko, ale nie mogę niczego zlokalizować. Próbuję filtrować niektóre wyniki i kiedy tworzę taką tablicę args i przekazuję ją do query_posts, zauważyłem, że wygenerowany SQL używa AND zamiast OR dla wartości 'class_1_days'. Chciałbym zrobić niż OR. Jak bym to zrobił? (Używam LIKE, ponieważ dane są serializowane, w przeciwnym razie spróbowałbym "IN" i przekazał tablicę. Jaki jest właściwy sposób na to? $args = array( 'taksonomia' => 'kursy', 'term' => 'drawing', 'post_type' => 'school', 'paged' => $paged, 'meta_query' => #$checkbox_array, array( array( 'key' => 'instructor', 'value ' => '1128', 'compare' => 'LIKE', ), array( 'key' => 'class_1_days', 'value' => 'Piątek', 'compare' => 'LIKE', ), array ( 'key' => 'class_1_days', 'value' => 'Sobota', 'porównaj' => 'LUBIĘ', ), ) ); To jest odpowiedni kod SQL, który jest generowany, w którym zauważyłem AND [138] => Array ( [0] => SELECT SQL_CALC_FOUND_ROWS wp_posts.ID FROM wp_posts INNER JOIN wp_term_relationships ON (wp_posts.ID = wp_term_relationships.object_id) INNER JOIN (wp_posts.ID = wp_postmeta.post_id) ZŁĄCZENIE WEWNĘTRZNE wp_postmeta AS mt1 ON (wp_posts.ID = mt1.post_id) ZŁĄCZENIE WEWNĘTRZNE wp_postmeta AS mt2 ON (wp_posts.ID = mt2.post_id) GDZIE 1=1 AND (wp_termid_retaxon_termid) 18) ) AND wp_posts.post_type = 'school' AND (wp_posts.post_status = 'publish' OR wp_posts.post_status = 'private') AND ( (wp_postmeta.meta_key = 'instructor' AND CAST(wp_postmeta.meta_value AS CHAR) %1128%') AND (mt1.meta_key = 'class_1_days' AND CAST(mt1.meta_value AS CHAR) LIKE '%Friday%') AND (mt2.meta_key = 'class_1_days' AND CAST(mt2.meta_value AS CHAR) LIKE ' %Saturday%') ) GRUPUJ WG wp_posts.ID ZAMÓW WG wp_posts.post_date LIMIT DESC 0, 5


title: Woocommerce - Ukryj „dodaj do koszyka” w bezpłatnych produktach

text: używam Woocommerce i szukam sposobu na ukrycie przycisku "Dodaj do koszyka" na stronie pojedynczego produktu **JEŚLI** produkt jest za darmo - robię duży plik CSV - Import i niektóre ceny produktów są ustawione na zero - chcę tylko ukryć przycisk "dodaj do koszyka" na tych produktach, więc nie można ich kupić. już pytałem o to na stronie wsparcia, ale bez powodzenia Pozdrawiam


title: Zapytanie SQL do konwersji adresu URL posta metaobrazu do polecanego obrazu

text: Guru WordPressa, mamy pytanie: Pracujemy nad stroną, która przez jakiś czas nie była aktualizowana. Przez większość czasu ma zainstalowany wordpress 3.2. Zaktualizowaliśmy go do najnowszej wersji wordpress, ale napotkaliśmy problem z polecanym obrazem. Przed tą witryną umieść link do polecanego obrazu w niestandardowym polu meta o nazwie „obraz”. W tym polu mamy pełną ścieżkę do obrazu, np. http://example.com/wp-content/uploads/rok/miesiąc/zdjęcie.jpg Potrzebujemy przykładu, jak odpytać pole niestandardowe, aby uzyskać adres URL obrazu i dodać go do polecanej sekcji obrazu. Kolejny problem - mamy 30000 postów, które musimy przekonwertować. Wielkie dzięki. **AKTUALIZACJA** Tutaj znajdujemy (stare odpowiedzi pomocy technicznej i odpowiedzi dotyczące przepełnienia stosu): http://wordpress.org/support/topic/convert-custom-field-image-to-be-the-feature-image http:// /stackoverflow.com/questions/15585063/how-to-set-wordpress-featured-images-via-sql Dzięki! **UPDATE** Oto, czego próbowaliśmy: while($posts->have_posts()): $posts->the_post(); $args = array( 'post_mime_type' => 'image/jpeg', 'post_title' => esc_attr( get_the_ID() ), // możesz chcieć tutaj czegoś innego 'post_content' => '', 'post_status' => ' dziedziczyć'     ); $image_url = get_post_meta(get_the_ID(),'image',true); $nazwapliku = strpos($image_url,'uploads/'); $filename = substr($image_url,$filename+strlen('przesyłane')); $thumb_id = wp_insert_attachment ($args, $basedir.$filename, get_the_ID()); $ metadane = wp_generate_attachment_metadata ($thumb_id, $basedir.$filename); $ dobry = wp_update_attachment_metadata ( $thumb_id, $ metadata ); update_post_meta( get_the_ID(), '_thumbnail_id', $thumb_id ); koniec; Ale w tym momencie pojawia się błąd: "za mało pamięci".


title: Jak i gdzie możemy poprosić o dodanie nowych hooków do WordPressa?

text: Używam świetnej wtyczki Changelogger, która dodaje historię wersji wtyczki do strony wtyczek, gdy pojawia się aktualizacja. Chociaż chciałbym, to nie działa na stronie aktualizacji, na której można aktualizować rdzeń WordPress, wtyczki i motywy. Jak i gdzie można zażądać nowego haka dla tej strony, aby można było dodać również dzienniki zmian do tej strony?


title: Jak zmienić nazwę folderu wp-admin z filtrem admin_url?

text: > **Możliwy duplikat:** > Czy mogę zmienić nazwę folderu wp-admin? Zastosowałem kilka reguł mod_rewrite, aby przekierować `/wp-admin` do `/my-admin` - na podstawie tego samouczka. Zmieniłem również wewnętrznie adres URL administratora, podłączając się do `admin_url` i zastępując ciąg `/wp-admin`: add_filter('admin_url', 'my_admin_url'); function my_admin_url($path) { return str_replace('wp-admin', 'my-admin', $path); } **Update #1** Aby nie zepsuć tych (około 200) części kodu za pomocą zakodowanego na stałe `/wp-admin`, szukam i zamieniam wszystkie odpowiednie atrybuty `$_SERVER` na `/wp-admin` na początku moich `funkcji .php`. To działa do tej pory. **Aktualizacja #2** Przepisywanie atrybutów `$_SERVER` w `functions.php` jest za późno na poprawną konfigurację `$current_screen`, która może zepsuć części kodu w zależności od tego. Konfiguracja w końcu odbywa się w `wp-includes/vars.php` (poprzez ustawienie zmiennej globalnej `$pagenow`), która jest zbyt wcześnie, aby można było się do niej podłączyć przez wtyczki. Naprawiłem ten problem, przenosząc `$_SERVER` rewrites do `wp-config.php` - co jest wystarczająco wcześnie. :) * * * ### Problemy z podejściem opisanym powyżej ↑ Powyższe podejście może nie działać dla warunków, które porównują `admin_url()` do jednego z atrybutów `$_SERVER` (pierwszy wskazuje na `/my-admin`, drugi to `/wp-admin`). Jednak pierwsze testy wskazują, że żaden z takich warunków nie występuje w kodzie rdzenia WP. Czy ktoś widzi inne problemy z tym podejściem?


title: Zmień nazwę wp-admin

text: Chcę zmienić nazwę adresu URL administratora „wp-admin” na np. 'Admin'. Ustawiłem regułę przepisywania w .htaccess, aby uzyskać dostęp do loginu administratora: RewriteRule ^admin wp-admin [NC,L] To działa, ale nadal mogę używać /wp-admin. Muszę więc powiedzieć Wordpressowi, że „admin” to nowy adres URL. Czy ktoś może pomóc?


title: Pokaż treść po pierwszym i drugim akapicie

text:
Poniższa funkcja służy do pokazywania określonej treści po pierwszym akapicie. Chciałbym pokazać „treść X” po pierwszym akapicie i „treść Y” po drugim akapicie. <?php $paragrafPo = 1; //wyświetl po pierwszym akapicie $content = apply_filters('the_content', get_the_content()); $treść = rozbij("
", $treść); for ($i = 0; $i <count($content); $i++ ) { if ($i == $paragraphAfter) { ?>
Wstaw tutaj treść
 <?php } echo $content[ $i] . „
”; } ?> Doceniam każdą pomoc.


title: Jak zawinąć link „Czytaj więcej” w tagu DIV?

text: Czy ktoś może mi powiedzieć, jak zawinąć kotwicę Czytaj więcej (którą wyświetla się po fragmencie) znacznikami DIV za pomocą `get_the_content('Czytaj więcej')`?


title: Ustaw Następny i Poprzedni na pojedynczym $posttype.php używaj tej samej kolejności, co w archive-$posttype.php

text: Mam niestandardowy typ postu **events** i wyświetlam te zdarzenia za pomocą archive-events.php i single-events.php z hierarchii szablonów. Mam niestandardowe zapytanie w archive-events.php $paged = ( get_query_var('paged') ) ? get_query_var('stronicowane') : 1; $events_query = new WP_Query( array ( 'post_type' => 'events', 'orderby' => 'meta_value', 'meta_key' => '_fulldate', 'order' => 'ASC', 'paged' => $ paged, 'meta_query' => array ( array( 'key' => '_fulldate', 'value' => $cutoff_date, 'type' => 'numeric', 'compare' => '>' )) ) ); Wyświetla wydarzenia w kolejności według daty wydarzenia (w przeciwieństwie do daty publikacji). Wszystko działa dobrze, dopóki nie umieszczę `previous_post_link()` i `next_post_link()` w single-events.php. Dzieje się tak, że następne i poprzednie linki prowadzą mnie do następnego i poprzedniego wydarzenia według daty publikacji, a nie według daty wydarzenia. Jestem trochę zdezorientowany, w jaki sposób events-single.php ma wiedzieć, które jest następne wydarzenie. Czy powinienem tam również robić jakieś zapytanie, ponieważ nie ma mnie w tej chwili? To tylko standardowy „pojedynczy” plik. Czy ktoś mógłby mi pomóc, krążyłem nad tym i nie mogę się dowiedzieć, jak to zrobić.


title: Echo wartość pola niestandardowego w funkcji shortcode

text:
Chyba robię tu coś złego. Chcę wyświetlić pola niestandardowe **"pw_featured_note"** i **"pw_featured_price"** Oto moja dotychczasowa funkcja w kodzie() { query_posts('post_type=property&posts_per_page=2'); if (have_posts()) : while (have_posts()) : the_post(); echo "
"; if ( get_post_meta($post->ID, 'pw_featured_property', true) ) ; echo ""; the_post_thumbnail('home-kciuk'); echo ""; echo "
".get_the_title()."
"; echo "
".get_post_meta($post->ID, 'pw_featured_property', prawda)."
"; echo "
 do widzenia
"; echo "
"; koniec; endif; wp_reset_query(); } add_shortcode('polecana właściwość', 'polecane'); Każda pomoc byłaby bardzo mile widziana.


title: Ukryj pozycje menu dla odwiedzających i filtruj według roli

text: W moim menu mam kilka pozycji menu, których nie chcę pokazywać osobom niezalogowanym. Jedną z nich chcę pokazać tylko zalogowanym użytkownikom określonej roli, drugą wszystkim zalogowanym. Tak więc jeden z nich nazywa się „Moja drukarka”. Powinno to być widoczne dla wszystkich zalogowanych osób. Drugi to „Partnerzy”. Powinno to być widoczne tylko dla użytkowników z rolą partnera. Próbowałem używać Role Scopera, ale uważam, że jest to bardzo trudne w użyciu i nie ma to większego sensu. Koliduje to również z wieloma innymi rzeczami, których nie potrzebuję. Czy mimo to mogę ukryć pozycje menu w zależności od ich roli? Dzięki **EDYTUJ** Utworzyłem menu za pomocą administratora i umieściłem je w lokalizacji motywu. Pozycje menu, które chcę ukryć, znajdują się w tym menu. Dzięki za 2 odpowiedzi poniżej, ale nie osiągnij tego, czego szukam.


title: Kod w motywie functions.php szybciej niż z wtyczką?

text: Czytałem wiele artykułów, w których mówi się, że nie powinniśmy trzymać wtyczek, których nie używamy. Nawet jeśli są wyłączone, używają pamięci. **functions.php zamiast 10 wtyczek?** Co jeśli mam 10 małych wtyczek, aby każda z nich miała małą funkcję. Czy mogę przyspieszyć, przenosząc funkcje do motywów functions.php? Jeśli tak / nie, dlaczego?


title: Czy istnieje sposób na dodanie linku bezpośrednio do tego zapytania o media?

text: Uruchamiam to zapytanie, które pobiera wszystkie obrazy dołączone do konkretnego posta i wyświetla je w pokazie slajdów (patrz przykład tutaj - http://powers.deanelliott.me/property/1428-elm-street/) Czy jest sposób że mogę bezpośrednio wyprowadzić link (aby większy obraz został wyświetlony w lightbox) do tego zapytania, ponieważ dodawanie tagów linków nie działa <?php $args = array('numberposts' => -1, 'orderby ' => 'menu_order', 'order' => 'ASC', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'post_parent' => $post->ID); ?> <?php if ( $photos = get_posts($args) ) : ?> <?php foreach ( $photos as $photo ) : ?> <?php echo wp_get_attachment_image($photo->ID,'thumbnail'); ?> <?php endforeach; ?> <?php endif; ?>


title: Bardzo wolna strona – jak zoptymalizować liczbę zapytań?

text:
**EDYTUJ 19.12.2011** Jeszcze raz dziękuję Ijaas. Wszystko działa z wyjątkiem kolejności dni. Porządkuje grupy dni według kolejności publikacji. Jeśli starszy post ma nowszą datę w swoim meta_key, to jest przed nowszym opublikowanym postem ze starszym meta_key. Właściwie sortuje wydarzenia z jednego dnia, ale nie sortuje dni. Czy masz jakiś pomysł dlaczego? Oto aktualny kod, którego używam.
Nadchodzące
 <?php $convertedtime = "Y-m-d H:i"; // Format czasu Możesz usunąć to, jeśli jest zdefiniowane przed $convertedtime = "g:i"; // przekonwertuj na zegar 12-godzinny i minuty dla nadchodzących wydarzeń sidebar $convertedendtime = "g:i a"; // przekonwertuj na zegar 12-godzinny i minuty dla nadchodzących wydarzeń sidebar $today = date ( 'Y-m-d H:i' ); $data = czas(); // JEŚLI chcesz zacząć od przyszłej daty użyj strtotime( FutureDateHere ); $data = data ( 'Y-m-d H:i' , $data ); $future = strtotime ( '+10 dni' ); // JEŚLI chcesz zacząćod przyszłej daty użyj strtotime( '+10 dni', strtotime( FutureDateHere ) ); $przyszłość = data ( 'R-m-d H:i' , $przyszłość ); $razy = tablica(); $zdarzenia = tablica(); $keys = array('open_time', 'closing_time', 'artist_talk_time', 'special_event_time', 'lecture_time', 'panel_time', 'workshop_time'); $args = array( 'post_type' => 'event', 'orderby' => 'meta_value', 'order' => 'asc', 'meta_query' => array( /* 'relation' => 'BRAK', */ array( 'key' => $keys, 'value' => array($today,$future), 'compare' => 'BETWEEN', 'type' => 'DATE' ), ) ); $event_query = nowe WP_Query( $args ); if ($event_query->have_posts()) : while ($event_query->have_posts()) : $event_query->the_post(); // Przechowywanie zdarzeń w tablicy jest bardziej efektywne niż używanie get_the_title, ect... później $events[$post->ID] = array( 'title' => apply_filters('the_title', $post->post_title), 'link' => get_permalink($post->ID), 'thumbnail' => get_the_post_thumbnail($post->ID, 'upcoming_event_sidebar'), 'venue' => get_post_meta($post->ID,'event_venue', true), 'custom_venue' => get_post_meta($post->ID,'custom_event_venue', true), 'opening_time_end' => get_post_meta($post->ID,'opening_time_end ', true), 'closing_time_end' => get_post_meta($post->ID,'closing_time_end', true), 'artist_talk_time_end' => get_post_meta($post->ID,'artist_talk_time_end', true), 'special_event_time_end' => get_post_meta($post->ID,'special_event_time_end', true), 'lecture_time_end' => get_post_meta($post->ID,'lecture_time_end', true), 'panel_time_end' => get_post_meta($post->ID,'panel_time_end ', true), 'workshop_time_end' => get_post_meta($post->ID,'workshop_time_end', true) ); $custom_field_keys = get_post_custom_keys(); foreach ($custom_field_keys as $custom_field_key) { if (in_array($custom_field_key, $keys)) { $custom_field_value = get_post_meta($post->ID, $custom_field_key, true); if ($custom_field_value >= $thedate && $custom_field_value <= $future) { $times[date('Y-m-d', strtotime($custom_field_value))][] = array($custom_field_value, $post->ID, $ klucz_pola_niestandardowego); $events[$post->ID][$custom_field_key] = $custom_field_value; //czas_otwarcia, czas_zamknięcia....... } } } endwhile; foreach($razy jako $dzień => $lista): if($num = count($list)): sort($lista); echo "
"; // Rozpocznij dzień ?>

  <?php echo $liczba.(($num >= 2)? " Zdarzenia " : " Ewant "); ?>    <?php echo ($dzień == $dziś)? "Dzisiaj" : date( 'l' , strtotime($day) ); ?>    <?php echo date( 'F j', strtotime($day) ); ?>

 <?php foreach($list as $ev){ $time_value = $ev[0]; $post_id = $ev [1]; $time_key = $ev[2]; $e = (object) $events[$post_id]; if ($time_key == 'opening_time') { ?>
 <a href ="<?php echo $e->link ?>" title="<?php echo $e->tytuł ?>"> <?php echo $e->miniaturka ?>
<a href="<?php echo $e->link ?>" title="<?php echo $e->title ?>"> <?php echo $e->title ?>

Otwieranie

<?php echo ($e->miejsce != 'inne')? $e->miejsce : $e->niestandardowe_miejsce; ?>

<?php echo data( $convertedtime, strtotime( $e->opening_time ) ); Echo " - "; echo date( $convertedendtime, strtotime( $e->opening_time_end ) ) ;?>

 <?php } else if ($time_key == 'closing_time' ) { ?>
 <a href="<?php echo $e->link ?>" title="<?php echo $e->tytuł ?>"> <?php echo $ e->miniaturka ?>
<a href="<?php echo $e->link ?>" title="<?php echo $e->tytuł ?>"> <?php echo $e->title ?>

Zamykanie

<?php echo ($e->miejsce != 'inne')? $e->miejsce : $e->niestandardowa_miejsce; ?>

<?php echo data( $convertedtime, strtotime( $e->closing_time ) ); Echo " - "; echo date( $convertedendtime, strtotime( $e->closing_time_end ) ) ;?>

 <?php } else if ($time_key == 'artist_talk_time' ) { ?>
 <a href="<?php echo $e->link ?>" title="<?php echo $e->tytuł ?>"> <?php echo $ e->miniaturka ?>
<a href="<?php echo $e->link ?>" title="<?php echo $e->tytuł ?>"> <?php echo $e->title ?>

Rozmowa artysty

<?php echo ($e->miejsce != 'inne')? $e->miejsce : $e->niestandardowe_miejsce; ?>

<?php echo data( $convertedtime, strtotime( $e->artist_talk_time ) ); Echo " - "; data echo( $convertedendtime, strtotime( $e->artist_talk_time_end ) ) ;?>

 <?php } else if ($time_key == 'special_event_time') { ?>
 <a href="<?php echo $e->link ?>" title="<?php echo $e->title ?>"> <?php echo $e->miniaturka ?>
<a href="<?php echo $e->link ?>" title="<?php echo $e->title ?>"> <?php echo $e->title ?>

Wydarzenie specjalne

<?php echo ($e->miejsce != 'inne')? $e->miejsce : $e->niestandardowe_miejsce; ?>

<?php echo data( $convertedtime, strtotime( $e->special_event_time ) ); Echo " - "; echo date( $convertedendtime, strtotime( $e->special_event_time_end ) ) ;?>

 <?php } else if ($time_key == 'lecture_time' ) { ?>
<a href="<?php echo $e->link ?>" title="<?php echo $e->title ?>"> <?php echo $e->miniaturka ?>
<a href="<?php echo $e->link ?>" title="<?php echo $e->title ?>"> <?php echo $e->title ?>

Wykład

<?php echo ($e->miejsce != 'inne')? $e->miejsce : $e->niestandardowe_miejsce; ?>

<?php echo data( $convertedtime, strtotime( $e->lecture_time ) ); Echo " - "; echo date( $convertedendtime, strtotime( $e->lecture_time_end ) ) ;?>

 <?php } else if ($time_key == 'panel_time' ) { ?>
 <a href="<?php echo $e->link ?>" title="<?php echo $e->tytuł ?>"> <?php echo $ e->miniaturka ?>
<a href="<?php echo $e->link ?>" title="<?php echo $e->title ?>"> <?php echo $e->title ?>

Panel

<?php echo ($e->miejsce != 'inne')? "; echo date( $convertedendtime, strtotime( $e->panel_time_end) ) ;?>

 <?php } else if ($time_key == ' Workshop_time') { ?>
 <a href="<?php echo $e->link ?>" title="<?php echo $e->title ?>"> <?php echo $e->thumbnail ?>
<a href="<?php echo $e->link ?>" title="<?php echo $e->title ?>"> <? php echo $e->tytuł ?>

Warsztat

<?php echo ($e->miejsce != 'inne')? : $e->niestandardowa_miejsca; ?>

<?phpecho date( $convertedtime, strtotime( $e->workshop_time ) ); Echo " - "; echo date( $convertedendtime, strtotime( $e->workshop_time_end ) ) ;?>

 <?php } } echo "
"; // Koniec dnia endif; na każdym kroku; endif; // ZAKOŃCZ $event_query->have_posts(); ?> Mam stronę, która zapętla się przez niestandardowy typ posta i sortuje według dat wprowadzonych w `meta_boxes`. Wcześniej wydawało się, że działa z rozsądną prędkością, ale teraz jest bardzo powolny. Prawdopodobnie jest jakiś logiczny błąd, który popełniam w kolejności moich zapytań i żądań php, ale nie wiem, jak to zoptymalizować. Oto kod, który jest ładowany na stronie. Link do * _original_ * kodu na Pastebin dla łatwiejszego przeglądania: Kod Pastebin Oto kod z functions.php, który tworzy metadane dla postów. Link do Pastebin w tej sekcji kodu: Kod Meta Box Z góry dziękujemy. **EDYCJA 14.12.2011 - Reumieściłem oryginalny kod z przykładem poniżej. Czy jestem na dobrej drodze?** Oryginalny kod nadal jest dostępny w witrynie Pastebin Link. <?php /* Uzyskajmy całą metadatę w jednym wywołaniu, a nie tyle zapytań */ $event_custom_meta=get_post_custom($post->ID); // Pobierz wszystkie dane $event_start_date = $event_custom_meta['start_date'][0]; /* Nie wiem, dlaczego potrzebuję [0] tutaj, ale zwraca Array, jeśli go nie mam */ $event_end_date = $event_custom_meta['end_date'][0]; $event_opening_time = $event_custom_meta['opening_time'][0]; $event_closing_time = $event_custom_meta['artist_closing_time'][0]; $event_lecture_time = $event_custom_meta['lecture_time'][0]; $event_panel_time = $event_custom_meta['panel_time'][0]; $event_special_event_time = $event_custom_meta['special_event_time'][0]; $event_workshop_time = $event_custom_meta['workshop_time'][0]; $event_event_venue = $event_custom_meta['event_miejsce '][0]; $event_custom_event_venue = $event_custom_meta['custom_event_venue'][0]; echo $event_start_date; echo $event_end_date; echo $event_opening_time; echo $event_closing_time; echo $event_artist_talk_time; echo $event_lecture_time; echo $event_panel_time; echo $event_special_event_time; echo $event_workshop_time; echo $event_event_venue; /* Test działa. W porządku, teraz mogę wywołać echo tych zmiennych w dowolnym miejscu */ /* Zastąp poprzedni kod poniżej bardziej przejrzystym kodem po*/ ?>  <a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><?php the_title('
', '
'); ?>
<?php if (get_post_meta(get_the_ID(),'event_venue', true) != 'other') { echo get_post_meta(get_the_ID(),'event_venue' , PRAWDA); } jeśli (get_post_meta(get_the_ID(),'event_venue', true) == 'other') { echo get_post_meta(get_the_ID(),'custom_event_venue', true); } ?>
  <a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><? php tytuł_('
', '
'); ?>
<?php if ($event_event_venue != 'inne') { echo $event_event_venue; } if ($event_event_venue == 'inne') { echo $event_custom_event_venue; } ?>
  <?php /* czy funkcja get_related_event data wywołuje inne zapytanie? *Czy można dodać tę informację do oryginalnej konfiguracji meta_box? */ echo get_related_event_data( $event_event_venue, 'adres' ); echo get_related_event_data( $event_event_venue, 'phone_no' ); echo get_related_event_data( $event_event_venue, 'adres URL' ); /* koniec pytania */ ?> **END EDIT on 12/14/2011 - dodano poprawiony przykład kodu powyżej** Jestem prawie pewien, że jest w tej sekcji poniżej, ponieważ strona przyspiesza, gdy wyjmuję "Nadchodzące " pętla. Co ja robię źle? Link do sekcji Suspicious w Pastebin:Suspicious Code
Nadchodzący
 <?php for ($i=0; $i<10; $i++) { $thedate = strtotime ( '+'.$i.' dzień ', strtotime ($dzisiaj)); $data = data ( 'Y-m-d H:i' , $data ); $thedaytext = strtotime ( '+'.$i.' day' , strtotime ( $todaytext ) ) ; $thedaytext = data ( 'l' , $thedaytext ); $thedatetext = strtotime ( '+'.$i.' dzień' , strtotime ( $todaydatetext ) ) ; $thedatetext = data ( 'F j' , $thedatetext ); $future = strtotime ( '+24 godziny' , strtotime ( $thedate ) ) ; $przyszłość = data ( 'R-m-d H:i' , $przyszłość ); $razy = tablica(); // umieść przed $event_query i wydaje się działać $args = array( 'post_type' => 'event', 'orderby' => 'meta_value', 'order' => 'asc', 'meta_query' => array( 'relation' => 'OR', array( 'key' => 'opening_time', 'value' => array($today,$future), 'compare' => 'BETWEEN', 'type' => 'DATE' ), array( 'key' => 'artist_talk_time', 'value' => array($today,$future), 'compare' => 'BETWEEN', 'type' => 'DATE' ), array( 'key' => 'closing_time', 'value' => array ($today,$future), 'compare' => 'BETWEEN', 'type' => 'DATE' ), array( 'key' => 'special_event_time', 'value' => array($today,$future ), 'porównaj' => 'POMIĘDZY', 'type' => 'DATA' )) ); $event_query = nowe WP_Query( $args ); if ($event_query->have_posts()) : while ($event_query->have_posts()) : $event_query->the_post(); $keys = array('czas_otwarcia', 'czas_zamknięcia', 'czas_rozmów_artysty', 'czas_wydarzenia_specjalnego'); $custom_field_keys = get_post_custom_keys(); foreach ($custom_field_keys as $custom_field_key) { if (in_array($custom_field_key, $keys)) { $custom_field_value = get_post_meta($post->ID, $custom_field_key, true); if ($custom_field_value >= $thedate && $custom_field_value <= $future) { $counttest++; $times[] = array($custom_field_value, $post->ID, $custom_field_key); } } } koniec; ?>
 <?php if ($counttest >0) { ?>

  <?phpecho $test licznika; if ($counttest>=2) { echo ' Zdarzenia '; } // end if ($totalevents>=2) function if ($counttest<2) { echo ' Event '; } ?>    <?php if ($thedate==$dziś) { echo 'Dzisiaj'; } if ($data>$dzisiaj) { echo $tekst dnia; } ?>    <?php echo $thedatetext; ?>

 <?php } endif; $test licznika=0; sort($razy); // Zmieniłem sortowanie, aby sortować tutaj foreach ($times as $event) { $time_value = $event[0]; $post_id = $event[1]; $klucz_czasu = $zdarzenie [2]; // zmienił foreach tutaj if ($time_key == 'opening_time') { ?>
 <a href="<?php echo get_permalink($post_id) ?>" title="<?php echo get_the_title($post_id); ?>"> <?php echo get_the_post_thumbnail($post_id, 'upcoming_event_sidebar'); ?>
<a href="<?php echo get_permalink($post_id) ?>" title="<?php echo get_the_title($post_id); ?>"> <?php echo get_the_title($ post_id); ?>

Otwieranie

 <?php if (get_post_meta($post_id,'event_venue', true) != 'other') { echo get_post_meta($post_id, „miejsce_zdarzenia”, prawda); } if (get_post_meta($post_id,'event_venue', true) == 'other') { echo get_post_meta($post_id,'custom_event_venue', true); } ?>

<?php $opening_time_formated = date($convertedtime, strtotime( get_post_meta($post_id,'opening_time', true))); echo $opening_time_formated;?>

 <?php } else if ($time_key == 'artist_talk_time') { ?>
 <a href="<?php echo get_permalink($post_id) ?>" title="<?php echo get_the_title ($post_id); ?>"> <?php echo get_the_post_thumbnail($post_id, 'upcoming_event_sidebar'); ?>
<a href="<?php echo get_permalink($post_id) ?>" title="<?php echo get_the_title($post_id); ?>"> <?php echo get_the_title($ post_id); ?>

Rozmowa artysty

<?php echo get_post_meta($post_id,'event_venue', true);?>

<?php $artist_talk_time_formated = data($convertedtime, strtotime( get_post_meta($post_id,'artist_talk_time', true))); echo $artist_talk_time_formated;?>

 <?php } else if ($time_key == 'closing_time') { ?>
 <a href="<?php echo get_permalink($post_id) ?>" title="<?php echo get_the_title($post_id); ?>"> <?php echo get_the_post_thumbnail($post_id, 'upcoming_event_sidebar'); ?>
<a href="<?php echo get_permalink($post_id) ?>" title="<?php echo get_the_title($post_id); ?>"> <?php echo get_the_title($post_id); ?>

Zamykanie

<?php echo get_post_meta($post_id,'event_venue', true) ;?>

<?php echo get_post_meta($post_id,'closing_time', true);?>

 <?php } else if ($time_key == 'special_event_time') { ?>
 <a href="<?php echo get_permalink($post_id) ?>" title="<?php echo get_the_title($post_id); ?>"> <?php echo get_the_post_thumbnail($post_id, 'upcoming_event_sidebar'); ?>
<a href="<?php echo get_permalink($post_id) ?>" title="<?php echo get_the_title($post_id); ?>"> <?php echo get_the_title($post_id); ?>

Wydarzenie specjalne

<?php echo get_post_meta($post_id,'event_venue', true);?>

<?php $special_event_time_formated = date($convertedtime, strtotime( get_post_meta($post_id,'special_event_time', true))); echo $special_event_time_formated;?>

 <?php } } rewind_posts(); ?>
 <?php } ?>


title: Wyłącz formatowanie w obszarze tekstowym

text: Używam następującego kodu w mojej wtyczce, aby wyświetlić pole `<textarea>` na stronie: echo '<textarea required="required" name="Message" class="textarea" cols="70" rows=" 10">'.esc_textarea($wiadomość).'</textarea>'; Wydaje się jednak, że WordPress wstawia znaczniki `<p>` i `<br />` do zawartości obszaru tekstowego, jeśli wiadomość zawiera znaki nowego wiersza. Zakładam, że jest to spowodowane domyślnym filtrem wpautop(). Czy istnieje sposób na wyłączenie filtrowania zawartości `<textarea>` na stronie? **Edytuj** Więcej informacji o działaniu mojej wtyczki. Tworzy zaczep dla `the_content`, który dołącza dane do zawartości niektórych stron. Nadal chcę, aby formatowanie `wpautop` było stosowane do dołączonej treści, ale nie do pola `<textarea>`. Oto ogólny zarys konfiguracji mojej wtyczki: function get_special_content() { $text = ''; // Niestandardowa treść jest dodawana do tekstu tutaj // łącznie z polem textarea return $text; } function my_plugin_content_hook($content) { if(is_some_special_page()) { return $content.get_special_content(); } return $treść; } add_action('the_content', 'my_plugin_content_hook');


title: Przypisujesz listę kodów pocztowych do określonych stron WordPress?

text: Tło: Żyjemy w małym państwie i mamy w nim 10 „sklepów”. Każdy z tych sklepów ma własną stronę WordPress. Mamy główną listę kodów pocztowych dla naszego stanu (około 400 kodów pocztowych) i chcielibyśmy przypisać te kody pocztowe do jednej z 10 stron WordPress. Jeśli użytkownik wprowadzi swój kod pocztowy w polu wyszukiwania, przeniesiemy go bezpośrednio do przypisanej strony WordPress „sklep”. Jaki jest najlepszy sposób na zbudowanie tego, pamiętając o najlepszych praktykach WordPressa? Jest to dość prosta relacja jeden-do-wielu (strona -> kody pocztowe) i nie sądzę, aby potrzebne było żadne geokodowanie, ale nie jestem ekspertem w budowaniu wtyczek WordPress i chcę robić rzeczy poprawnie. Mam na myśli prostą tabelę bazy danych zawierającą 400 kodów pocztowych z polem „post_id” odpowiadającym właściwej stronie WordPress, ale byłoby miło mieć jakiś interfejs na zapleczu, który pozwala nam zbiorczo przypisywać kody pocztowe ( za pomocą pola wielokrotnego wyboru?) do strony WordPress bez konieczności ręcznej edycji każdego wiersza bazy danych - czy są jakieś narzędzia, które pomogą w tworzeniu tych interfejsów, czy jest to coś, co będę musiał utworzyć ręcznie?


title: Przenieś zawartość bbpress do postów

text: Szukam sposobu na przeniesienie forum bbPress do postów i odpowiedzi. Dlaczego pytasz? Cóż... korzystanie z forum w tym przypadku to przesada. I chcę się tego pozbyć. To złe jabłko z przeszłości. bbPress przenosi się na fora Wordpress > tematy kategorii > odpowiedzi na posty > komentarze Czy jest to możliwe bez zapytań SQL i tym podobnych? Jeśli nie... czy jest to proste, gdy daję programiście zadanie migracji? Po prostu próbuję znaleźć tutaj swoje położenie. Może istnieje jakieś szalone narzędzie, o którym nie wiem. Pozdrawiam, Paul


title: Najlepsza praktyka, aby terminy taksonomii można było tłumaczyć bez zmiany slugów?

text: Mam jedną niestandardową taksonomię z krajami i stanami. Chciałbym, aby te terminy były możliwe do przetłumaczenia, ale nie jestem pewien, jaki byłby najlepszy sposób, aby to osiągnąć. Przede wszystkim nie chcę zmieniać slugów, tylko etykietę i może napisy opisu. Myślałem o dwóch sposobach. Można używać WPML. Ale WPML wydaje się wymuszać zmianę slug dla każdego języka, czego nie chcę. Innym może być `wp_insert_term()`, ale nie jestem pewien, czy jest to wydajne i czy jest to prawidłowy sposób. Bardziej praktyczne byłoby pozwolić administratorom/redaktorom na dodawanie własnych terminów, twarde kodowanie wszystkich terminów nie pozwoliłoby mi na to, a ponadto mam wrażenie, że nie jest to zbyt wydajne (może być kilkaset lokalizacji w moim taksonomia)... Jakieś wskazówki? ** AKTUALIZACJA 1: WPML ** Skontaktowałem się z pomocą techniczną WPML, wyjaśniono, że WPML tworzy nowe terminy taksonomii dla każdego języka i jako taki każdy termin musi mieć unikalny ślimak ... jednak zastanawiam się, czy jest jakaś inna opcja, aby to osiągnąć, np. z aliasami terminów na przykład **UPDATE 2: wp_insert_term()** Znalazłem to: http://tommcfarlin.com/programmatically-create-categories/ i sugeruje uruchomienie `wp_insert_term()` w haczyku `'after_theme_setup Akcja „” lub „after_switch_theme”. Jednak to nie rozwiąże problemu tłumaczenia. Ponieważ akcja podpięcia jest uruchamiana dopiero po ustawieniu motywu, nawet jeśli dostanętext wszystkie ciągi etykiet terminów, będzie brane pod uwagę tylko język w momencie konfiguracji motywu.


title: WordPress Multisite na nginx

text: Mamy dwie wersje naszej witryny test.example.com działające na nginx i naszą podstawową witrynę example.com działającą na Apache. Strona działa od kilku lat i ma dużo treści i ruchu. Chcemy teraz dodać funkcję multisite do naszej witryny, ale aby nasza główna witryna działała w domenie root. Włączyliśmy subdomeny multisite, wildcard itp. na stronie test.example.com site1.test.example.com: „Witamy w nginx! Jeśli widzisz tę stronę, serwer sieciowy nginx został pomyślnie zainstalowany i działa. Wymagana jest dalsza konfiguracja. Aby uzyskać dokumentację online i wsparcie, odwiedź stronę nginx.org. Wsparcie komercyjne jest dostępne na nginx.com. Dziękuję za korzystanie z nginx. Nasze pytania to: 1. Jaka jest najlepsza praktyka konfiguracji nginx i rozwiązania tego powszechnego problemu, ponieważ jest tak wiele różnych odpowiedzi na to pytanie. 2. Kiedy zastosujemy go na naszej głównej witrynie example.com (w Appache), co będzie inne, o co musimy się troszczyć i co robić/nie robić w takim przypadku. 3. Na test.example.com posty wyświetlają błąd 404 po włączeniu multisite, chociaż zwykle pojawiają się w pętli na stronie głównej. Mam nadzieję, że jest to związane z problemem nginx i zostanie rozwiązane tą samą poprawką, jeśli nie, proszę, daj mi trochę wskazówek do debugowania.


title: Wstaw termin taksonomii do innej tabeli

text: Mam inną tabelę w bazie danych o nazwie "wp_taxterms". Jak wstawić do tej tabeli za każdym razem, gdy tworzony jest termin taksonomii wiadomości w sekcji „Klienci” lub jeśli istniejący został zaktualizowany/usunięty? EDYCJA: if( isset($_GET['strona']) && ($_GET['page']=="eksport-klienci") ) { global $wpdb; $result = $wpdb->get_results("WYBIERZ * Z wp_special"); $categories = get_terms( 'klienci' ); header("Pragma: public"); header("Wygasa: 0"); header("Kontrola pamięci podręcznej: musi-ponowna walidacja, po sprawdzeniu=0, przed sprawdzeniem=0"); header("Kontrola pamięci podręcznej: prywatna", fałsz); header("Typ treści: aplikacja/strumień oktetu"); header("Dyspozycja zawartości: załącznik; nazwa_pliku=\"Clients.csv\";" ); header("Content-Transfer-Encoding: binarny"); //utwórz wskaźnik pliku połączony ze strumieniem wyjściowym $output = fopen('php://output', 'w'); //wypisz nagłówki kolumn fputcsv($output, array('Nazwa', 'Adres', 'E-mail', 'Kontakt')); foreach($categories as $cat) { fputcsv($output, array($cat->name, $cat->opis, $cat->email, $cat->contact) ); } fclose($wyjście); Wyjście; }//endif


title: Używanie funkcji połączonych z ciągami znaków wewnątrz zmiennej

text: Próbuję zrobić dynamiczne pozyskiwanie obrazów, ale utknąłem. Prawdopodobnie dość podstawowe rzeczy, ale jestem w tym nowy. To działa: <img src="<?php bloginfo('template_url');?>/images/LakeArnaulMap-<?php the_ID();?>.png"/> Dlaczego nie: <?php $my_img = ' '; echo $my_img; ?>


title: Przycinanie miniaturek do określonych wymiarów na przednim słupku

text: Prawdopodobnie nie najlepszy opis tytułu, ale jedziemy. Jeden z moich niestandardowych typów postów dotyczy filmów z YouTube, które biorę kciukiem z youtube i przesyłam jako miniaturę posta. Teraz wystarczy pobrać obraz z youtube i użyć `media_handle_sideload()`, aby przesłać go jako załącznik do posta i ustawić rozmiary miniatur, do których można go przyciąć, ale obrazy wideo z YouTube mają nadmiar czarnych pasków u góry iu dołu. Więc potrzebuję sposobu na ich wycięcie. Mam więc niestandardowy rozmiar miniatury, który przycina wszystkie kciuki do szerokości 224 pikseli, zwany „po miniaturce”. Dostaję i przetwarzam kciuk tak, jak z przedniego słupka. $vid_url = $_POST['video_url']; $video_id = getVideoId($vid_url); if ($ video_id) { $ video_response = wp_remote_retrieve_response_code (wp_remote_request ($vid_url)); if ($video_response == 200) { $video_url = $vid_url; $video_image_url = 'http://img.youtube.com/vi/'.$video_id.'/hqdefault.jpg'; $tmp = download_url($video_image_url); $file_array = array( 'name' => basename( $video_image_url ), 'tmp_name' => $tmp ); } } $pid = wp_insert_post($nowy_post); $vid_thumb = media_handle_sideload( $file_array, $pid ); update_post_meta($pid,'video_thumb',$vid_thumb); Teraz to daje mi kciuk 224px/168px, więc teraz muszę przyciąć kciuk do 224px/120px, odcinając 24px od góry i dołu. Jakieś pomysły?


title: add_action przy dziedziczeniu statusu posta

text: Próbuję użyć zaczepu add_action() do uruchomienia funkcji niestandardowej, ale zmagam się ze stanem postu. Początkowo próbowałem używać: add_action('pending_to_publish_portfolio', 'my_function'); (portfolio jest moim niestandardowym typem postu). To nie zadziałało, więc napisałem na oficjalnym forum wsparcia Wordpress, aby uzyskać pomoc. Dostałem następujący kod, aby uzyskać właściwy status przejścia' function bj_test($new, $old) { print_r($old.'_to_'.$new); echo '<br>'; print_r($stary . '_' . $nowy); umierać(); } add_action('transition_post_status', 'bj_test', 10, 2); Daje mi to 2x status ': new_to_inherit new_inherit Sprawdziłem status dziedziczenia i kodeks po prostu stwierdza, że jest on używany do publikowania poprawek. Co ma sens, ponieważ zmieniam post oczekujący na opublikowany. Mój problem polega na tym, że po prostu nie wiem, jak teraz wykorzystać te informacje. Wszystko, co próbuję zrobić, to wywołać zdarzenie, gdy zmienię post z oczekującego na opublikowany. Według wszystkich samouczków online, które mogę znaleźć, powinno to być tak proste, jak moja pierwsza próba (zamieszczone powyżej), ale to po prostu nie działa. Czy ostatnio coś się zmieniło w sposobie obsługi przejść po postach, więc wszystkie te samouczki są nieaktualne? Prawdopodobnie jest to bardzo proste dla kogoś, kto wie, co robi, ale jestem bardzo nowy w WP i kończą mi się opcje :( wszelka pomoc jest doceniana.


title: Usuń „Edytuj link” obok „Opublikuj natychmiast” podczas dodawania nowego posta

text: Muszę usunąć **link Edytuj** obok **Opublikuj natychmiast**, ponieważ nie chcę, aby mój użytkownik planował post. Jak mogę to osiągnąć? Dziękuję!


title: Wordpress tworzy nieużywane (niezarejestrowane) rozmiary obrazów

text: Mam bloga z wiadomościami utworzonego na WordPressie. Skonfigurowałem WordPressa do tworzenia 3 wersji obrazów o zmienionym rozmiarze podczas ich przesyłania. * 315x215 (polecany obraz z włączoną opcją przycinania) * 620x (aby utworzyć obrazy według szerokości i automatycznie ustawić wysokość w zależności od obrazu) * 900x (taki sam, ale większy dla galerii) * oryginalny obraz (jest zapisywany automatycznie) Kiedy ja przesłałem kilka obrazów Zauważyłem, że WordPress tworzy obrazy * **300x250 lub 216...** , * 315x215 * 620x * 900x (i oczywiście oryginalne) DLACZEGO WordPress tworzy obraz o rozmiarze 300x??? Ostatnio usunąłem opcję obrazu 900x, ponieważ już jej nie używam, a potem WordPress robi to samo, ale zamiast tworzyć nieużywany obraz 315x, teraz tworzy dodatkowy obraz o szerokości 620, który jest przycinany według wysokości (na przykład normalny 620x396 i przycięte 620x350). Teraz obrazy 315x są generowane bez nieużywanych 300x, ale ten sam problem dotyczy 620x. Korzystanie z WordPressa 3.5.1 (ale problem był od początku – 3.4). **Aktualizacja:** Używam tego kodu w functions.php add_theme_support('post-thumbnails'); set_post_thumbnail_size (315, 215, prawda); add_filter( 'post_thumbnail_html', 'remove_thumbnail_dimensions', 10, 3 ); function remove_thumbnail_dimensions( $html, $post_id, $post_image_id ) { $html = preg_replace( '/(width|height)=\"\d*\"\s/', "", $html ); zwróć $html; } Skonfigurowałem WordPress, aby utworzyć 3 wersje obrazów o zmienionym rozmiarze, przechodząc do Opcje mediów i wskazując 315x215 w opcjach polecanych obrazów i zaznaczając opcję Przytnij polecany obraz, 620x0 dla średniego rozmiaru i 900x0 dla dużego rozmiaru (ostatni 0x0 teraz, ja po prostu już tego nie potrzebuję) **Aktualizacja 2:** Przepraszam Michael, ale nie zrozumiałeś. **CHCĘ** WordPress automatycznie generować różne rozmiary obrazów (315x215 dla miniatur, 620x dla obrazów średniej wielkości). Dostosowałem rozmiary w Dashboard -> Ustawienia -> Media -> Rozmiary obrazów w ten sposób. To, czego **NIE** chcę, aby WordPress zrobił, to wygenerowanie dwóch obrazów o szerokości 620px i różnych wysokościach (często lub zawsze jest to 620x350 i 620x348). Myślę, że to jakiś błąd, obraz pośredni pozostawiony przez wordpress po wygenerowaniu rozmiarów. Naprawdę doceni, jeśli ktoś pomoże.


title: Link do strony administracyjnej drugiego poziomu

text:
Stworzyłem wtyczkę z menu administratora, która wyświetla listę artystów zapisanych w bazie danych w niestandardowej tabeli. Ta strona jest stroną „wzorcową” i staram się wymyślić, jak połączyć nazwę wykonawcy ze stroną „szczegóły” w całym zapleczu. Z kodeksu i innych książek ustaliłem, że strony drugiego poziomu powinny być jak strony najwyższego poziomu, ponieważ będzie to funkcja wyświetlająca treść. Nie mogę dowiedzieć się, jak „powiązać” z tą funkcją zwrotną. Dodaję stronę pierwszego poziomu w następujący sposób: add_submenu_page('ppmtalentexpo', 'TARSTE II', 'TARSTE II', 'administrator', 'tarste2submenu2', 'jwg_talentexpo_options2_page'); i wyświetl pierwszy poziom w następujący sposób: function jwg_talentexpo_options2_page() { global $wpdb; $cnt = 0; $rows = $wpdb->get_results("WYBIERZ * z ppm_tarste2_bands ORDER BY nazwa_pasma"); //echo '
'; echo var_dump( $wiersze ); echo '
'; $retHTML = "

 Administrator PPM Talent Expo — TARSTE II

"; $retHTML .= "
"; $retHTML .= "
" . liczba($wiersze) . " zarejestrowany.
"; for( $c = 0; $c<liczba($wiersze);$c++ ) : $retHTML .= "
"; $retHTML .= "" . $rows[$c]->band_name . „”; $retHTML .= "
Kontakt: " . $rows[$c]->band_contact_person . „	”; $retHTML .= "band_email . "'>E-MAIL"; if( $rows[$c]->band_url != '' && $rows[$c]->band_url != 'n/a' ){ $retHTML .= " | band_url . „'>SIEĆ	”; } else { $retHTML .= "	"; } // koniec jeśli $retHTML .= "" . formatPhone($rows[$c]->band_contact_phone) . "	"; $retHTML .= ""; switch( (int) $rows[$c]->status ){ case 1: $retHTML .= "Zarejestrowany"; przerwanie; przypadek 2: $retHTML .= "Wybrany"; przerwanie; przypadek 3: $retHTML .= "Widok"; przerwanie; przypadek 4: $retHTML .= "Zwycięzca"; przerwanie; } // koniec przełącznika $retHTML .= "	"; $retHTML .= "
"; koniec za; $retHTML .= "
"; $resHTML .= "
"; echo $retHTML; } // funkcja zakończenia Tak więc w pętli for próbuję połączyć się ze stroną szczegółów każdego zarejestrowanego artysty w drugiej linii $retHTML za pomocą znacznika kotwicy. Planuję stworzyć funkcję wyświetlającą szczegóły tego artysty. Ponownie, co mam umieścić w tagu kotwicy LUB czy istnieje lepszy sposób na zrobienie tego, co próbuję? Z góry dziękuję za wszelkie wskazówki lub pomoc, Jon


title: wp_nonce_field wyświetla się dwukrotnie

text:
Mam `wp_nonce_field` w moim kodzie, ale z jakiegoś powodu tworzy on dwie instancje kodu HTML, jedną tam, gdzie się tego spodziewam, a drugą na początku wpisu. Czy to prawda, czy robię coś złego. Tworzy błąd walidatora. Jedną rzeczą, którą robię nieco inaczej, jest to, że formularz jest wyprowadzany za pomocą krótkiego kodu, ale nie spodziewałem się, że spowoduje to problem. Sprawdziłem resztę kodu i jest to przypadek, że `wp_nonce_field` z jakiegoś powodu "działa dwa razy" ... oto odpowiednia część kodu (poprzedza to reszta kodu formularza) $formDisplay .= $commentErrorDisplay ; $formDisplay .= '<input id="submitContact" type="submit" value = "Wyślij" />'; $formDisplay .= wp_nonce_field('formularz kontaktowy'); $formDisplay .= '<input type="ukryty" name="kontakt-przesłany" id="kontakt-przesłany" value="true" />'; $formDisplay .= '
'.$feedback.''; $formDisplay .= '</form>'; $formDisplay .= '
'; return $formDisplay; **Edytuj** : Myślę, że to odkryłem, chociaż w rzeczywistości nadal nie do końca rozumiem, ale to prawdopodobnie tylko ogólny brak wiedzy z mojej strony. Kodeks mówi > Zwracane wartości (ciąg znaków) pole Nonce. więc pomyślałem, że oznacza to, że ponieważ zwraca pole jednorazowe jako ciąg znaków, mogę je po prostu dołączyć do $formDisplay (trzecia linia mojego kodu), ale najwyraźniej nie. Myślę, że musi zarówno wyświetlać pole nonce, jak i zwracać je czy coś. Na pewno nie ma w tym nic dziwnego, ale chyba warto zostawić to pytanie tutaj na wypadek, gdyby ktoś inny wpadł w ten sam błąd.


title: Autouzupełnianie dla pól wejściowych taksonomii w formularzu front-end

text: Stworzyłem prosty formularz frontendowy, aby umożliwić użytkownikom przesyłanie postów - podobny do tego samouczka - **http://voodoopress.com/** . Mam również kilka niestandardowych taksonomii, które mam jako pola do wprowadzania tekstu w moim formularzu. To wszystko działa, ale zastanawiałem się, czy mimo to mogę mieć wszystkie pola, w tym tytuł posta i taksonomie, aby automatycznie sugerować istniejące wartości? Dziękuję


title: Dodawanie ładnych parametrów zapytania

text: Niestandardowy typ wpisu o nazwie strzelanie ma pole (z ACF) z dużą ilością obrazów. Są one wymienione w `single.php` CPT, a jeden z tych obrazów jest wyświetlany w pełnym rozmiarze. Obecnie mam adresy URL takie jak `shooting/foo-bar/?image=1`, gdzie 1 to indeks (nie ID) obrazu, który powinien być wyświetlany jako duży. Czy istnieje sposób na uzyskanie ładniejszych adresów URL, takich jak „strzelanie/foo-bar/1” za pomocą WordPressa? A może musiałbym napisać w tym celu niestandardową regułę przepisywania?


title: Jak połączyć tytuły postów na stronie A z jego postami na stronie B?

text: Ustawiłem i odwróciłem kolejność listy tytułów postów na mojej stronie głównej za pomocą: <?php global $post; $args = array( 'kategoria' => 6 ); $mojeposty = get_posts( $args ); $reverseposts = array_reverse( $mojeposty, prawda); foreach( $reverseposts jako $post ): setup_postdata($post); ?> <?php tytuł_(); ?> <?php endforeach; ?> Teraz nie jestem w stanie znaleźć odpowiedniej linii "a href", aby połączyć te tytuły z postami wywołanymi w innym pliku tymczasowym. Zakodowałem: <a href="<?php bloginfo('template_url'); ?>/category6"><?php the_title(); ?> ale wydaje mi się, że istnieje odpowiedni sposób na dynamiczne uzyskanie "category6". Jakakolwiek pomoc byłaby bardzo mile widziana. Dzięki z góry.


title: Właściwe użycie wp_enqeue_style

text: Mam następujący kod w moim pliku functions.php. To działa, ale zastanawiam się, czy jest to najlepsza praktyka do włączania stylów w wordpressie. Czy muszę również zarejestrować styl za pomocą wp_reister_style, ponieważ działa bez i dlaczego muszę to robić? <?php function mrskitson_load_styles(){ if (!is_admin()){ wp_register_style('main', get_template_directory_uri() . '/style.css'); wp_enqueue_style ('main', get_template_directory_uri() . '/style.css'); }//jeśli nie admin kończy }//function mrskitson_load_styles kończy add_action('get_header', 'mrskitson_load_styles'); ?>


title: Rozwijane menu nie zapisują się przy użyciu niestandardowych Meta Boxów w WordPress

text: Bawię się niestandardowymi polami meta w WordPressie i próbuję zmodyfikować rozwijane menu i zapisać opcję, której nie zapisuje. Jeśli użyję domyślnego szablonu, opcja dobrze się zapisuje. case 'select': echo '<select name="', $field['id'], '" id="', $field['id'], '">'; foreach ($pole['opcje'] as $opcja) { echo '<wartość opcji="', $opcja['wartość'], ''"', $meta == $opcja['wartość'] ? ' selected="selected"' : '', '>', $option['nazwa'], '</option>'; } echo '</select>'; przerwanie; Poniżej znajduje się moja zmodyfikowana wersja umożliwiająca wyświetlanie 3 menu rozwijanych: case 'champbans': echo '<select name="', $field['id'], '_team1ban_1" id="', $field['id' ], '_team1ban_1">'; foreach ($pole['opcje'] as $opcja1) { echo '<wartość opcji="', $opcja1['wartość'], '_team1ban_1"', $meta == $opcja1['wartość'] ? ' selected="selected"' : '', '>', $option1['nazwa'], '</option>'; } echo '</select>'; echo '<select name="', $pole['id'], '_team1ban_2" id="', $pole['id'], '_team1ban_2">'; foreach ($pole['opcje'] as $opcja2) { echo '<wartość opcji="', $opcja2['wartość'], '_team1ban_2"', $meta == $opcja2['wartość'] ? ' selected="selected"' : '', '>', $option2['nazwa'], '</option>'; } echo '</select>'; echo '<select name="', $pole['id'], '_team1_3" id="', $pole['id'], '_team1_3">'; foreach ($pole['opcje'] as $opcja3) { echo '<wartość opcji="', $opcja3['wartość'], '_team1ban_3"', $meta == $opcja3['wartość'] ? ' selected="selected"' : '', '>', $option3['nazwa'], '</option>'; } echo '</select>'; przerwanie; Nie wyświetlają się żadne błędy i nie widzę błędu po spędzeniu ostatnich 2 godzin na oglądaniu go. Każda pomoc lub wskazówki są mile widziane.


title: Jak mieć następną stronę do posta?

text: Mam zainstalowany motyw, ale moim problemem jest to, że motyw nie zapewnia funkcji następnej strony. Więc jeśli mam 20 postów i umieściłem 10 w _Stronach bloga pokazują co najwyżej_ w ustawieniach czytania w ustawieniach Wordpress, pokazuje tylko 10 postów, a potem nie widzę już pozostałych postów w moim domu, ponieważ nie mieć następny przycisk. Chcę mieć przycisk następnej strony, aby użytkownicy mogli nadal przeglądać inne posty, klikając przycisk Dalej. W jaki sposób mogę to zrobić? Potrzebuję pomocy. Jak najszybciej! Dziękuję Ci!


title: Pobierz całą zawartość strony (wygenerowany kod HTML w przeglądarce)

text: Szukam filtra, który zapewni całą stronę wygenerowaną w WordPressie - łącznie z sekcją nagłówka z metatagami, treścią, stylizacją i treścią dynamiczną. the_content() i the_excerpt() działają tylko dla części dynamicznej, a filtr żądań wydaje się działać tylko dla zapytań SQL (czy nie)? Chciałbym przefiltrować niektóre dane na całej stronie we wszystkich linkach lub przyciskach. W jaki sposób mogę to zrobić?


title: umieszczenie załadowanych mediów w podkatalogu

text: Cześć Chcę, aby wszystkie moje pliki były przesyłane do subdomeny na mojej stronie zamiast 'wp-content/uploads'. Utworzyłem subdomenę `cdn.mysite.com` i chcę, aby wszystkie przesyłane pliki trafiały tam. Chcę, aby moje przesyłane pliki były `cdn.mysite.com/uploads/year/month/mediafile` Tak jak przesyłanie automatycznie tworzy folder dla przesyłanych plików, chcę, aby robił to samo podczas przesyłania do subdomeny. Jak mogę to osiągnąć. EDYCJA: Znalazłem tę wtyczkę, która ma umieścić opcje ścieżki obrazu z powrotem na wordpressie, ale nie jestem pewien, czy powinienem jej użyć, nie wiem, czy faktycznie działa, nie chcę niczego zepsuć http ://wordpress.org/extend/plugins/wp-original-media-path/installation/ Również znalazłem ten samouczek jak to zrobić z pliku wp-config.php ale to tylko wyjaśnia zmianę nazwy folderu nie zmiana ścieżki jak przy umieszczaniu subdomeny. http://www.techgyd.com/how-to-change-media-uploads-folder-in-wordpress-3-5/17/ Chcę wypróbować drugą opcję, edytując plik wp-config.php, ale nie wiem, jak edytować ten wiersz kodu dla subdomen, obawiam się też, że jeśli wymyślimy, jak dodać opcję subdomain do pliku wp-config, to po aktualizacji wordpress zniknie, a moje obrazy mogą zepsuć w górę. Co powinienem zrobić?


title: dwadzieścia dwanaście widżetów tematycznych nie działa

text: Zarówno w przypadku Twenty Twelve 1.1, jak i motywu potomnego opartego na Twenty Twelve nie można dodawać widżetów. Jeśli przejdę do wyglądu > widżety, nie ma obszaru widżetów, do którego można by przeciągać widżety. Ponownie zainstalowałem najnowszy motyw Twenty Twelve i przełączyłem się na niego, ale problem pozostaje. Wordpress v3.5.1


title: Jaki jest dobry sposób na usunięcie z kolejki wszystkich skryptów dla jednej strony szablonu?

text: Odkryłem, że moje szablony załączników dziedziczą skrypty w kolejce dla pojedynczych postów. Moim pierwszym odruchem było usunięcie z kolejki tych skryptów jeden po drugim lub wykonanie sprawdzenia `is_attachment()` przed umieszczeniem ich w kolejce. Uderza mnie, że bardziej niezawodnym sposobem na zrobienie tego może być po prostu usunięcie wszystkich skryptów umieszczonych w kolejce dla tego typu strony; w ten sposób nie muszę aktualizować kodu w wielu miejscach, jeśli w przyszłości dodam lub usunę skrypt umieszczony w kolejce. Na marginesie nie mogę znaleźć na to sposobu. Jaki jest dobry sposób na usunięcie z kolejki wszystkich skryptów tylko dla jednej strony?


title: Przesyłanie zbiorcze, aby tworzyć posty, z których każdy zawiera jeden obraz, nagłówek i treść

text: Otrzymałem od klienta 300 zdjęć, 300 nagłówków i 300 akapitów. Czy istnieje sposób, aby umieścić to wszystko w pliku CSV (lub innym formacie) i przesłać cały plik do nowej instalacji WordPressa w jednej operacji? Nie mam umiejętności php, więc potrzebuję prostego rozwiązania, jeśli takie istnieje. Dziękuję.


title: Wyłącz responsywny szkielet css, ale strona nie pokazuje całości

text: po wyłączeniu szkieletu responsywnych zapytań o media i zablokowaniu responsywności witryny, ale witryna nie pokazuje całości, pokazuje tylko lewą stronę witryny, chciałbym, aby podgląd był w całości jak na pulpicie, poniżej znajduje się link dla mnie o czym mówię, proszę o pomoc!! http://d.pr/i/rPD9 Pozdrawiam, Decneo


title: Jak zweryfikować datowniki przed publikacją

text: Mam dwa selektory dat w moim poście: 1. data_początkowa i 2. data_końcowa Zasadniczo muszę sprawdzić, czy data_końcowa jest większa niż data_początkowa, zanim będę mógł kontynuować publikację. Z poprzedniego rozwiązania tutaj użyłem tego fragmentu kodu: add_action('save_post', 'validate_meta'); function validate_meta($post_id) { $post = get_post( $postid ); if ( $post->post_type !== 'podzadanie' ) return; if ( define('DOING_AUTOSAVE') && DOING_AUTOSAVE ) return $post_id; $data_początkowa = get_field('data_początkowa', $post_id); $termin = get_field('termin', $post_id); $data_początkowa = strtotime($data_początkowa); $termin = strtotime($termin); if($data_początkowa < $termin) $zatwierdzona = prawda; w przeciwnym razie $validated = false; if(!$validated) { dashboard_redirect(); wp_delete_post ($post_id, prawda); } else return $post_id; } Trochę działa, ale mam dwa problemy: 1. Przekierowuje do typu postu `post`, 2. Potrzebuję go po prostu do wyświetlenia komunikatu ostrzegawczego


title: Dodawanie treści do stron archiwum i taksonomii w niestandardowych typach postów?

text: Mam niestandardowy typ posta o nazwie „Produkty” i taksonomię o nazwie „Użycie”. Na moim landingu „Produkty” chciałbym mieć niestandardową treść, którą klient może edytować za pomocą WYSIWYG. To samo dotyczy strony docelowej taksonomii. Myślałem, aby stworzyć fałszywe strony i po prostu przeciągnąć zawartość za pomocą identyfikatora do moich szablonów archiwum-products.php i taxonomy-usage.php, ale byłem ciekawy, czy istnieje lepszy sposób na poradzenie sobie z tym.


title: Zaktualizuj tagi do ponad 10 000 postów za pomocą wpdb?

text: Mam ponad 10 000 postów na stronie, do których każdy musi mieć dodany tag. WP_Query albo kończy się pamięć, albo limit czasu na moim serwerze, a w przeszłości uruchamiając duże zapytania za pomocą tej funkcji, osiągnąłem limit zapytań MySQL z podobnymi funkcjami, o których wiem, że nie mogę wydajnie używać WP_Query i wp_set_post_tags, a ja Jestem pewien, że można to zrobić za pomocą wpdb bez tylu zapytań do bazy danych. Do każdego posta należy dodać tylko jeden tag. Jak to zrobić za pomocą zapytania wpdb?


title: Wyszukaj autora i niestandardowy typ postu

text: Przeszukałem pytania i odpowiedzi podobne do moich, ale nie udało mi się znaleźć odpowiedzi, której potrzebuję. Mam autorów (około 8000) i niestandardowe typy postów (około 15). Potrzebuję mojej funkcji wyszukiwania, aby umożliwić zapytania dla autora i CPT. Ta struktura adresu URL „/?s=%20&author_name=joesname” zwraca wszystkie posty z CPT. Ale jeśli dodam „&post_type=blogs” dla pełnego adresu URL w celu filtrowania CPT „/?s=%20&author_name=joesname&post_type=blogs”, nie będzie to filtrować tylko dla blogów. Muszę to zrobić dla każdego autora i CPT. To doprowadzało mnie do szału od tygodni. Każda pomoc byłaby bardzo mile widziana.


title: Szablon z niestandardowym typem posta (tabele niestandardowe) nie działa

text: Używam niestandardowego typu postu (CPT) `mój projekt` przechowywane w tabeli niestandardowej MY_PROJECT. Oto kod rejestracyjny CPT: $labels = array( 'name' => __( 'Projects ' ), 'singular_name' => __( 'Project' ), // inne etykiety ); $args = array( 'labels' => $labels, 'description' => __( 'Zarządzanie projektami' ), 'public' => true, 'show_ui' => true, 'show_in_nav_menus' => true, 'show_in_admin_bar' => true, 'menu_position' => 100, 'capability_type' => 'post', 'hierarchical' => false, 'has_archive' => true, 'supports' => false, 'publicly_queryable' => true, 'query_var ' => true, 'rewrite' => array( 'slug' => 'projekt', 'with_front' => false ), ); register_post_type( 'mój-projekt', $args ); Jak widać, nie używam żadnych pól z Wordpress (`'supports' => false,`), ponieważ używam własnych pól i wstawiam je do własnej tabeli; ale ustawiłem `post-name` i `post-title` w tabeli `wp_posts` podczas tworzenia nowego `mój-projekt` CPT. Chcę wyświetlić wszystkie moje pola za pomocą podstawowego szablonu dwadzieściaeleven, stwierdziłem, że muszę dodać ten kod w `themes/twentyeleven/functions.php`: add_filter( 'pre_get_posts', 'my_get_posts' ); function my_get_posts( $query ) { if ( is_home() ) $query->set( 'post_type', array( 'mój-projekt') ); zwróć $zapytanie; } => Pierwsze pytanie: czy jest inny sposób na zarejestrowanie mojego CPT w celu wyświetlenia go/ czy to jest najlepsze miejsce do napisania tego? Następnie utworzyłem 2 pliki w `themes/twentyeleven/`: 1 `archive-my-project.php` (powinien wyświetlić listę `mój-projekt`) 2 `single-my-project.php` (powinien wyświetlić jeden `mój -project`) => Drugie pytanie, użycie przycisku "Podgląd przed modyfikacją" w admin spowoduje wyświetlenie listy wszystkich moich CPT `my-project` (tylko tytuł). Powinien to być tylko jeden projekt, a wordpress powinien używać pliku `single-my-project.php`, prawda? Adres URL jest w porządku: `http://localhost/wordpress/project/project1/`. Kliknięcie na jeden z tytułów spowoduje wyświetlenie strony "Nic nie znaleziono"... Próbowałem edytować zawartość `single-my-project.php`, aby wyświetlić ciąg "TEST", ale nic się nie zmieniło... => Trzecie pytanie: slug ( który ustawiłem na `project`) jest używany tylko w adresie URL i nigdzie indziej, czy to prawda? Nie ma nic wspólnego z nazwami plików `single-my-project.php` (ok) / `single-project.php` (nie ok)? Pamiętaj, że czytałem o Template_Hierarchy Dziękujemy za pomoc, Xavier


title: Pokaż zawartość WP w różnych witrynach PHP

text: wkrótce zaczniemy tworzyć duży dynamiczny projekt internetowy (prawdopodobnie na ZF2), który będzie miał kilka modułów i zakładek, które będą działać jako moduł CMS (wyświetlanie wiadomości, galerii, postów itp.). Załóżmy, że mamy pięć zakładek w menu głównym, jedna lub dwie z nich będą zawierać treści związane z CMS. Teraz moje pytanie brzmi: **czy można używać panelu administracyjnego Wordpress do dodawania treści, ale wyświetlać je na innej stronie (nie jako iframe lub widżet), jeśli tak, jak możemy to zrobić**. **Dodatkowa uwaga nad komentarzem:** Nastąpi interakcja użytkownika na interfejsie aplikacji Zend, użytkownik musi mieć możliwość interakcji z treścią pochodzącą ze strony WP. Na przykład, jeśli on/ona zmieni temat (kategorię) powiązane wiadomości/posty muszą być wymienione. Co oznacza, że ZF2 musi wysyłać zapytania do WP Engine. Zrzut ekranu z mojego scenariusza znajduje się poniżej, podziel się jakimkolwiek pomysłem! [tu wpisz opis obrazu](http://i.stack.imgur.com/uF6Hr.jpg) Z góry dziękuję


title: Użytkownik musi się najpierw zalogować przed wejściem na stronę internetową

text: _**W mojej aplikacji użytkownicy muszą się najpierw zalogować przed wejściem na stronę._** Więc teraz, co robię, stworzyłem jedną niestandardową stronę logowania. Jak mogę przekierować użytkownika do strony logowania, jeśli nie jest jeszcze zalogowany. Czy powinienem dostosować wp-login.php do logowania? Co jest lepsze, **1.** Przekieruj użytkownika na stronę logowania lub **2.** wp-login.php


title: Wiele galerii w WordPressie 3.3.1

text: Istnieje dobra wtyczka, która pozwala użytkownikowi na stworzenie kilku galerii w jednym poście bez użycia ręcznego atrybutu "include". http://wordpress.org/extend/plugins/multiple-galleries/ Ale po aktualizacji WordPress do wersji 3.3.1 core ta wtyczka już nie działa. (Sugeruję, że jest to spowodowane zmianami w menedżerze postów.) Czy ktoś wie, jak to naprawić? Może istnieje inna wtyczka realizująca tę funkcję?


title: Hak add_action dla strony links.php

text: Jaki jest konkretny haczyk, który identyfikuje stronę links.php (dodaj, edytuj, usuń itp. Linki Blogroll) i tylko tę stronę? Każda pomoc byłaby mile widziana. Dzięki, cadeyrn EDIT Przepraszam, zapomniałem wspomnieć, potrzebuję tego haka w panelu administracyjnym. Mam wtyczkę, która hamuje inną, ponieważ obie są uruchamiane przez admin_menu add_action. Dlatego potrzebuję punktu add_action, który jest ważny tylko dla części menu admina link edit/add/delete.


title: Zakodować na sztywno krótki kod jako ostatni element menu w nawigacji podstawowej?

text:
Mam zainstalowany framework Genesis z motywem potomnym. Mój klient chce, aby jego motyw „koszyk na zakupy” był ostatnią pozycją menu, w jego głównej nawigacji, bez względu na liczbę pozycji menu. _Skrócony kod:_ echo do_shortcode('[koszyk_zakupy]'); _Aktualny kod:_ $nav_output = sprintf ( '
%2$s%1$s%3$s
', $nav, genesis_structural_wrap( 'nav', '
', 0 ), genesis_structural_wrap( 'nav', '
', 0 ) ); echo zastosuj_filtry( 'genesis_do_nav', $nav_output, $nav, $args ); } } _Aktualne dane wyjściowe:_


title: Jak filtrować kolejność wyników wyszukiwania?

text:
Czy istnieje sposób, aby moje wyniki wyszukiwania wyświetlały się najpierw na stronach, a posty po stronach? Moja witryna jest witryną biznesową z blogiem, w przeciwieństwie do bloga głównego. Strony statyczne zawierają wszystkie rzeczy „oto, co robimy” i najlepiej, gdyby pojawiły się jako pierwsze, gdyby ktoś szukał różnych usług. Posty na blogu są jaśniejsze, ale są nowsze, więc pojawiają się jako pierwsze. Pętla wyszukiwania pochodzi z motywu Kubricka: <?php if (have_posts()) : ?>

<?php _e('Nasze wyszukiwanie Wyniki”, „kubrick”); ?>

 <?php while (have_posts()) : the_post(); ?> <div <?php post_class(); ?>> <h3 id="post-<?php the_ID(); ?>"><a href="<?php the_permalink() ?>" rel="zakładka" title="<?php printf(__( 'Stały link do %s', 'kubrick'), the_title_attribute('echo=0')); ?>"><?php the_title(); ?>
<?php the_excerpt(); ?>
 <?php endwhile; ?> <?php else : ?>
<?php _e('Bez powodzenia. Spróbuj ponownie?', 'kubrick'); ?>
 <?php get_search_form(); ?> <?php endif; ?> Czy mogę umieścić tam coś, aby określić, że jakikolwiek wynik z "strony" będzie wymieniony przed wynikami z "postu". A może WP faktycznie nie rozróżnia stron i postów na tym poziomie? Skoro strony statyczne są "statyczne", może mógłbym użyć identyfikatorów? Dziękuję!


title: Filtr zdarzeń za pomocą wpdb dla zapytań

text: Jestem programistą WordPress (PHP), jednak nie wykonałem wielu skomplikowanych zapytań MySQL. Pracuję nad stroną wydarzeń i chcę tworzyć filtry: Użytkownik powinien mieć możliwość filtrowania wydarzeń według następujących kryteriów: DZIŚ, JUTRO, TEN WEEKEND, NASTĘPNE 7 DNI, WYBIERZ SWOJE DATY. Metadane używane do filtrowania zdarzeń znajdują się poniżej i można je znaleźć w tabeli post meta db w kolumnie meta_key. data_początkowa data_końcowa razy dni recurring_event sell_out cancelled Tak wygląda tabela: id post_id meta_key meta_value 1 12 data_początku 20140923 2 22 dni a:4:{i:0;s:6:"poniedziałek";i:1;s:9 :"środa";i:2;s:6:"piątek";i:3;s:8:"saturday"} 3 12 data_końcowa 20141003 4 78 recurring_event 0 5 34 razy 24 godziny 6 12 dni a:2:{ i:0;s:6:"poniedziałek";i:1;s:7:"tuesday";} 7 67 data_początku 20140906 8 45 data_końcowa 20141108 Jakich zapytań MySQL mogę użyć do uzyskania zdarzeń na dzisiaj, jutro, weekend i 7 dni. Znalazłem podobną odpowiedź na to, czego szukam: Jak wypisać następne 7 dni i wszelkie zdarzenia (cpt) zawarte w tych dniach $today = date("o-m-d"); $future = strtotime ( '+6 dni' , strtotime ( $dziś ) ) ; $przyszłość = data ( 'o-m-d' , $przyszłość ); $event_query = new WP_Query( array( 'post_type' => 'event', 'meta_key' => 'event-date', 'orderby' => 'meta_value', 'order' => 'asc', 'meta_query' = > array( array( 'key' => 'event-date', 'value' => array($today,$future), 'compare' => 'BETWEEN', 'type' => 'DATE' ) ) ) ); for ($i=0; $i<7; $i++){ $thedate = strtotime ( '+'.$i.' dzień' , strtotime ( $dzisiaj ) ) ; $data = data ( 'o-m-d' , $data ); echo $data; // Przeprowadź pętlę przez wszystkie posty i sprawdź $thedate względem swojej meta daty // i wypisz, jeśli pasuje // następnie rewind_posts(); aby ustawić na następny dzień } Używając $wpdb jak mogę wyświetlić tylko wydarzenia na dzisiaj lub jutro sprawdzając daty między start_date i end_date?


title: Dodawanie menu nawigacyjnego do wpisu administratora

text: chcę wstawić rozwijane menu z listą menu, które stworzyłem w nav-menu.php, do post-admin... Na przykład, kiedy tworzę post, chcę wstawić menu "Paul" w post (tylko post, który chcę) wybierając menu na prawym pasku bocznym Admin-Post. Skopiowałem wiersze: add_action( 'init', 'register_my_menus' ); function register_my_menus() { register_nav_menus( array( 'główne-menu' => __( 'Podstawowe menu' ), 'osobiste-menu' => __( 'Menu osobiste' ) ) ); } w utworzonym przeze mnie post.fields.php, nie działają. :( Link do istniejącego kodu. Czy możesz mi pomóc w tym fantastycznym problemie? :( ps: Przepraszam za mój zły angielski Francesco


title: Zapytanie CMS WordPress

text: Jestem dość zaznajomiony z WordPressem i używałem go w różnych projektach, zarówno jako blog, jak i w pełni funkcjonalny CMS wykorzystujący niestandardowe typy postów itp. Mam zamiar rozpocząć projekt dla klienta, który zawiera witrynę wyświetlającą kilka sztuk odzieży. Każdy element będzie również wyświetlał różne opcje kolorystyczne (np. koszulka „XXX” będzie dostępna w kolorze czarnym, czerwonym i białym i powinna być widoczna po kliknięciu próbki koloru). Produktów będzie 30, daj lub weź kilka, ale ta liczba jest mocno zakorzeniona. Nie będzie sytuacji, w której trzeba będzie dodać jeszcze 20 produktów. Więc moją pierwszą chęcią było zrobienie niestandardowego postu o nazwie „ubrania” i stworzenie każdego elementu garderoby. Stamtąd utworzyłbym opcję koloru każdego elementu jako stronę podrzędną strony z ubraniami dla rodziców. Wiem, że do takiego projektu można podejść na różne sposoby, ale chciałem uzyskać jakiś wkład i może kilka zaleceń, jak się do tego zabrać.


title: Jak przesunąć miniatury do środka?

text: Zrobiłem kilka rozmiarów kciuków. Ale niektóre z nich dokonują całkowitej zmiany rozmiaru oryginalnego zdjęcia lub tworzą nowe o określonych rozmiarach z prawego dolnego rogu. Czy można wycentrować kciuki? Mam zamiar zrobić nowy kciuk o podanym rozmiarze, ale z przesunięciem do środka/centylizacji? add_theme_support( 'post-miniaturki' ); if ( function_exists( 'add_image_size' ) ) { add_image_size( 'ostatni post-kciuk', 0, 160); add_image_size( 'ostatnie posty-kciuk-4-3', 120, 160, prawda); }


title: Możliwość edit_theme_options nie daje możliwości dodawania pozycji do menu

text: Chcę dać użytkownikowi możliwość dodawania stron do menu. Dlatego dałem mu możliwość `edit_theme_options` za pomocą wtyczki `User Role Editor`. Daje mu to możliwość zobaczenia Wygląd - Menu, zobaczenia struktury, a także dodawania stron do menu, a przynajmniej tak się wydaje. Bo chociaż system pozwala mu dodać pozycję do struktury menu i przesunąć ją we właściwe miejsce po naciśnięciu „Zapisz menu”, system po prostu mówi, że menu zostało zapisane, ale nowej pozycji nie ma w menu. Wygląda na to, że Wordpress po prostu przyjmuje prośbę i odrzuca ją w rzeczywistości. Działa dobrze z administratorem, więc przypuszczam, że może to być jakiś problem z uprawnieniami. Czy jest jakaś inna możliwość, którą muszę dać użytkownikowi, aby edycja menu działała?


title: Problem z pętlą: Wyświetla ten sam zestaw postów dla wszystkich kategorii

text:
Więc mam 2 pętle, jedna w drugiej. Pierwszy, aby uzyskać tytuły kategorii, drugi, aby wyświetlić kilka ostatnich postów z tej kategorii. Problem: Tytuły kategorii wyświetlają się poprawnie, ale ostatnie posty dla każdej kategorii są takie same. Na czym kończę to: Kategoria-1 Post-1, Post-2, Post-3 Kategoria-2 Post-1, Post-2, Post-3 Kategoria-3 Post-1, Post-2, Post-3 itd.. KOD: $catArgs = array( 'orderby' => 'nazwa', 'zamówienie' => 'ASC', 'exclude' => '106' ); $postArgs = array( 'orderby' => 'data', 'zamówienie' => 'DESC', 'showposts' => '4', ); $categories = get_categories($catArgs); if($categories){ foreach($categories as $category) { $my_query = new WP_Query($postArgs); ?>
<a href="<? echo get_category_link( $category->term_id );?>" title ="<? echo $kategoria->nazwa_kota; ?>"><? echo $kategoria->nazwa_kota; ?>
<? echo opis_kategorii( $kategoria->identyfikator_terminu ); ?>

 <?php while ($my_query->have_posts()) : $my_query->the_post(); ?>
<? the_post_thumbnail(); ?><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><?php the_title(); ?>
 <?php endwhile; ?>
 <? } ?> <? } ?> Dzięki!!


title: Jak używać „Przypadków” zamiast „JEŻELI” w logice warunkowej?

text: Ostatnio zajmuję się tworzeniem witryn dla WordPressa, które są zarówno coraz bardziej złożone, jak i charakteryzują się znacznie wyższym natężeniem ruchu. Pamiętam, kiedy uczyłem się od innego o PHP, że w przypadku optymalizacji, "cases" są lepszą opcją niż "IFs", ponieważ mniej obciążają serwer. Udało mi się z powodzeniem używać "przypadków" w niektórych funkcjach, ale jeśli chodzi o użycie w plikach takich jak single.php, to sromotnie mi się nie udało. Pomyślałem więc, że wypchnę to społeczności, aby dowiedzieć się, jak prostą logikę IF w pętlach WordPressa można zoptymalizować za pomocą „przypadków”. Mój poniższy kod zasadniczo sprawdza, czy ładowana treść jest dla jednego z sześciu niestandardowych typów postów i w zależności od tego, jaki to jest, różne parametry są wprowadzane do funkcji niestandardowych. if (is_singular('news')) { term_by_order('news_category', array(3623)); if( false != get_the_term_list( $post->ID, 'news_column' )) { echo ' | '. get_the_term_list($post->ID,'news_column', ' ', ' ', '' ); } } /* <!-- if sport --> */ if (is_singular('sports')) { term_by_order('sports_category', array(3623)); if( false != get_the_term_list( $post->ID, 'sports_column') ) { echo ' | '. get_the_term_list($post->ID,'kolumna_sportowa', ' ', ' ', '' ); } } /* <!-- if opinia --> */ if (is_singular('opinia')) { term_by_order('opinion_category', array(3623)); if( false != get_the_term_list( $post->ID, 'opinia_kolumna' ) ) { echo ' | '. get_the_term_list($post->ID,'opinion_column', ' ', ' ', '' ); } } /* <!-- if life --> */ if (is_singular('life')) { term_by_order('life_category', array(3623)); if( false != get_the_term_list( $post->ID, 'life_column' )) { echo ' | '. get_the_term_list($post->ID,'life_column', ' ', ' ', '' ); } } /* <!-- if culture --> */ if (is_singular('culture')) { term_by_order('culture_category', array(3623)); if( false != get_the_term_list( $post->ID, 'culture_column' ) ) { echo ' | '. get_the_term_list($post->ID,'culture_column', ' ', ' ', '' ); } } /* <!-- if community --> */ if (is_singular('community')) { term_by_order('community_category', array(3623)); if( false != get_the_term_list( $post->ID, 'community_column') ) { echo ' | '. get_the_term_list($post->ID,'community_column', ' ', ' ', '' ); } }


title: Czy istnieje wtyczka WordPress, która może publikować w Google+?

text: Używam WP to Twitter na moim blogu WordPress, aby wyzwalać tweeta za każdym razem, gdy coś opublikuję. Oczywiście dotyczy to tylko Twittera, potrzebuję też czegoś do opublikowania w Google+.


title: Czy istnieją systemy komentowania „w stylu YouTube” dla WordPressa?

text: Szukam systemu komentowania, który pozwoli użytkownikom polubić/nie lubić nawzajem swoje komentarze, a najbardziej lubiane komentarze automatycznie wspinają się na górę, podobnie jak system komentowania YouTube. Czy ktoś wie o czymś takim?


title: Jak odfiltrować datę dd/mm/rrrr z niestandardowego pola w zapytaniu?

text: Próbuję zbudować zapytanie, aby posortować niektóre posty według niestandardowego pola daty, w którym daty są sformatowane w formacie dd/mm/rrrr. Działa poprzez zapytanie bazy danych bezpośrednio za pomocą `get_results`, jak w tym przykładzie: $querystr = " SELECT * FROM wp_posts, wp_postmeta WHERE wp_posts.ID = wp_postmeta.post_id AND wp_postmeta.meta_key = 'my_cutom_date' AND wp'sta_posts. AND wp_posts.post_type = 'post' ZAMÓWIENIE DO DNIA STR_TO_DATE(wp_postmeta.meta_value, '%d/%m/%Y') ASC "; Ale chciałbym przetransponować to zachowanie do `WP_Query`, używając filtra `posts_where`. Doszedłem do tego : $args = array( 'post_type' => 'post', 'post_status' => 'publish', 'posts_per_page' => 10, 'meta_key' => 'my_custom_date' ); function filter_orderby( $orderby = '' ) { global $wpdb; $orderby .= " ZAMÓWIENIE DO STR_TO_DATE($wpdb->postmeta.meta_value, '%d/%m/%Y') ASC "; zwróć $zamówienie; } add_filter( 'posts_orderby', 'filter_orderby' ); Ale wydaje się, że nic nie zwraca. czego mi brakuje ?


title: Ustaw ogólny formularz rezerwacji dla niestandardowego typu postu

text: Chcę utworzyć prosty formularz rezerwacji (reservation.php) dla niestandardowego typu zawartości (domy), utworzyłem reservation.php w katalogu motywów. Pytanie brzmi: Jak mogę utworzyć link do tego ogólnego formularza rezerwacji z niestandardowego typu postu i przekazać identyfikator posta za pomocą `POST` lub `GET`, aby uzyskać informacje, takie jak tytuł posta, taksonomia i tak dalej. Plusem byłoby zrobienie tego za pomocą ładnego linku bezpośredniego, takiego jak `mysite.com/lake-house/reservation/`


title: Nie można odczytać wartości pliku cookie, dopóki nie zaloguję się do administratora WP

text: Po zalogowaniu się do administratora WP mogę odświeżyć interfejs i zobaczyć wartość mojego pliku cookie wyprowadzoną jako „hello world”. Jeśli wyloguję się z administratora, a następnie odświeżę interfejs, wartość pliku cookie to teraz „nic”, jak widać w mojej przykładowej funkcji. Dzieje się tak tylko wtedy, gdy przeglądam witrynę online. Testując lokalnie, mogę odczytać ciasteczko bez logowania się do administratora WP. Jakieś pomysły? Oto moja funkcja testowa do ustawiania funkcji cookie test_cookie() { setcookie( 'test-cookie', 'hello world', time()+1209600, '/'); } add_action( 'init', 'test_cookie' ); Oto funkcja wyprowadzania wartości ciasteczka do funkcji strony output_test_cookie() { if ( isset( $_COOKIE['test-cookie'] ) ) echo $_COOKIE["test-cookie"]; // powinno wyświetlić hello world, ale robi to tylko po zalogowaniu się do administratora WP else echo 'nothing'; } add_action( 'template_redirect', 'output_test_cookie' );


title: Dodaj nowy post (niestandardowy typ posta) Usuwa niestandardowe metadane 1 posta

text: funkcja save_details ( $post_id ){ if ( wp_is_post_revision ( $post_id )) $post_id = wp_is_post_revision ( $post_id ); update_post_meta( $post_id, "nazwa zeznania", $_POST["nazwa zeznania"]); } add_action('save_post', 'save_details', 10, 1); Mam niestandardowy typ posta z niestandardowym polem, ale po dodaniu kilku zauważyłem, że w niektórych poprzednich wpisach brakowało danych w polu niestandardowym. Wypełniłem je ponownie i wyglądało to dobrze. Potem kliknąłem przycisk Dodaj nowy tylko raz i 1 z moich postów ma usunięte niestandardowe metadane. Jednak nie dzieje się tak za każdym razem, gdy klikam Dodaj nowy. Próbowałem tego rozwiązania, ale bezskutecznie, jeśli (zdefiniowano ('DOING_AUTOSAVE') && DOING_AUTOSAVE ) Każda pomoc byłaby bardzo mile widziana, Dzięki, Ashley


title: Czy można stwierdzić, czy użytkownik jest zalogowany do Wordpress, patrząc na ustawione pliki cookie?

text: Czy można stwierdzić, czy użytkownik jest zalogowany do Wordpress, patrząc na pliki cookie ustawione na stronie? Jeśli nie, w jaki sposób mogę dodać haki do akcji udanego logowania i wylogowania oraz ustawić własne pliki cookie?


title: jQuery Ajax rozkłada WP_Query

text:
Pracuję nad polem wyszukiwania Ajax, w którym chcę załadować linki do produktów pasujących do mojego zapytania. Mój problem polega na tym, że nie wiem, jak mogę uzyskać tytuły i permalinki z obiektu zapytania w jQuery. **HTML:** <form method="post" class="konspekt wyszukiwarki" role="search" action="<?php echo esc_url( home_url( '/' ) ); ?>"> <input type=" text" name="s" class="s" autocomplete="off" placeholder="<?php _e( 'Czego szukasz?', 'gtp_translate' ); ?>" />

Wynik

 <input type="prześlij" name="search" value="<?php _e( 'Search', 'gtp_translate' ); ?>" /> </form> **Jquery:** // Pole wyszukiwania Ajax $('.searchbox .s').keyup(function() { var s = $(this).val(); if( s.length > 0 ) { $.ajax( { type: 'post' , url: gtp.ajaxurl, dataType: 'json', data: { action: 'gtp_ajax_search', s: s, }, sukces: function(data) { $('.results').show().append(data); } }); } else { $('.results').hide() } }); **Działanie funkcji Ajax w functions.php** // Wyszukiwanie Ajax add_action( 'wp_ajax_gtp_ajax_search', 'gtp_ajax_search' ); add_action( 'wp_ajax_nopriv_gtp_ajax_search', 'gtp_ajax_search' ); function gtp_ajax_search() { if( isset( $_POST['s'] ) ) { $s = $_POST['s']; $args = array( 's' => $s, 'posts_per_page' => 5, 'post_type' => 'produkty', ); $wyniki = nowe WP_Query( $args ); echo json_encode( $wyniki ); } umieraj; }


title: Tag warunkowy dla postów załączników

text: W Wordpress single.php strony postów są przeznaczone zarówno dla załączników multimedialnych (np. http://domain.se/postname/imagename/) jak i blogów. Jakiego tagu warunkowego mogę użyć do określenia, czy post nie jest załącznikiem multimedialnym, ale zwykłym postem na blogu? Powodem, dla którego chcę to ustalić, jest to, że w tej chwili dostosowałem plik single.php do dodatkowych pól, których potrzebuję do postów na blogu z pojedynczym postem, a tak jak teraz, niestandardowe pola są również puste na stronach załączników multimediów co wygląda źle.


title: Jak mogę ukryć elementy potomne stron roboczych za pomocą wp_list_pages()?

text: Wyświetlam prostą mapę witryny z _wp_list_pages();_ $args = array( 'sort_column' => 'menu_order', 'title_li' => '', 'post_status' => 'publish' ); wp_list_pages( $args ); Problem polega na tym, że domyślnie pokazuje to również opublikowane elementy podrzędne stron roboczych, takie jak: > Strona 1 (opublikowana) -> wyświetlana > > --- Strona 2 (wersja robocza) -> niewyświetlana > > ------ Strona 3 (opublikowana) -> wyświetlana Chcę osiągnąć: > Strona 1 (opublikowana) -> wyświetlana > > --- Strona 2 (wersja robocza) -> nie wyświetlana > > ------ Strona 3 ( opublikowane) -> **nie** wyświetlane Podejrzewam, że niestandardowy Walker załatwiłby sprawę, ale nigdy tak naprawdę nie mogłem zrozumieć, jak one działają.. Czy istnieje sposób na ukrycie tych stron podrzędnych bez konieczności ustawiania ich wszystkich w wersji roboczej? **Edytuj** : aby wyjaśnić, wypróbujmy trochę zdjęć. Masz więc drzewo z pełną hierarchią Twoich stron. Wspinamy się na drzewo. W momencie, gdy napotykamy gałąź pociągową, ścinamy ją. Oczywiście wszystkie inne gałęzie dołączone do niego dalej są również odrzucane (bez względu na to, czy są to szkice, czy nie). Mam nadzieję, że to lepiej to wyjaśnia. Oto przykład z dość głęboką hierarchią : > Strona 1 (opublikowana) -> wyświetlana > > --- Strona 2 (wersja robocza) -> niewyświetlana <- **Wytnij tutaj i wyklucz wszystkie dalsze > dzieci** > > - ----- Strona 3 (opublikowana) -> nie wyświetlana > > ------------ Strona 4 (opublikowana) -> nie wyświetlana > > ------------ Strona 5 (wersja robocza) -> nie wyświetlane > > --------------- Strona 6 (opublikowane) -> nie wyświetlane


title: Wypełnij puste pole niestandardowe innym polem niestandardowym

text: Mam stronę z listą produktów, wszystkie produkty są przesyłane z csv. mam dwa niestandardowe pola o nazwie „stara_cena” i „nowa_cena”. Czasami nie ma rabatu (nowa_cena) , więc pole jest puste. chciałbym przechowywać wartość "old_price" w "new_price" , jeśli "nowa_cena" jest pusta. **ważne, że jest automatycznie przechowywany w bazie danych, nie prosze o alternatywne rozwiązanie.** z góry dziękuję.


title: Jak wyświetlić numer posta w zapytaniu?

text: Chcę wyświetlić numer wpisu obok każdego tytułu wpisu w zapytaniu, tak aby dosłownie wyglądał tak: 1. Tytuł pierwszego wpisu w zapytaniu 2. Tytuł drugiego wpisu w zapytaniu 3. Tytuł trzeciego wpisu w zapytaniu Jak to zrobić ten? * * * <?php function ngtj_get_some_posts( $category_name ) { // ustaw kryteria $args = array( 'numberposts' => 10, 'post_type' => array('feature', 'post') ); // zwróć tablicę obiektów wpisów. return get_posts( $args ); } ?> <?php wp_nonce_field('opcje-aktualizacji') ?> <?php $posts_returned = ngtj_get_some_posts( 'NAZWA_KATEGORII' ); foreach ( $posts_returned as $post_returned ) { echo $post_returned->post_title.'<input style="text-align: center;" type="text" name="postnumber" size="1">'.$post_returned->ID.'<br>'.$post_returned->current_post.'<input type="hidden" name="page_options" wartość ="post_one" />'; } ?>