title: Dodaj rozmiar obrazu dla wyróżnionego obrazu dzięki responsywnemu projektowi

text: Tak więc wiem, że mogę stworzyć niestandardowy rozmiar polecanego obrazu, dodając to do mojego pliku functions.php: add_image_size('newsize', 883, 300, true); i wywołując go: the_post_thumbnail('newsize'); Ale mam też reguły CSS, dzięki którym obrazy będą responsywne, włączając: img { display:block; szerokość:100%; wysokość:auto; } Tak więc, jeśli ktoś prześle obraz, który **przekracza** określony przeze mnie rozmiar (883x300), obraz jest przycinany, a kiedy go wywołam, otrzymuję idealny obraz 883 x 300. Niestety, jeśli mam obraz, który jest mniejszy niż te wymiary, funkcja nadal działa tak, jak powinna (przycinanie szerokości lub wysokości, jeśli przekraczają), ale wtedy obraz nie wypełnia tego obszaru płótna (883 piksele). na przykład, jeśli załaduję obraz o wymiarach 500 x 350 w wyróżnionym obrazie, normalnie wywołanie tego wyróżnionego obrazu spowoduje wyświetlenie obrazu o wymiarach 500 x 300, ale ponieważ obrazy mają być responsywne, CSS rozciąga ten obraz do szerokości 883 pikseli, rozmiar dz. To z kolei zwiększa wysokość, ponieważ rozciąga oba wymiary. Konieczne jest, aby wysokość obrazu nie przekraczała 300 pikseli. Więc... jak mogę mieć ciastko i je zjeść? Czy istnieje sposób, aby zmusić mniejszy obraz do płótna o wymiarach 883x300, zanim mój CSS dostanie się do niego, aby go rozciągnąć? Wielkie dzięki, WA


title: Moja wtyczka nie instaluje się poprawnie, jeśli nadal jest zainstalowana poprzednia wersja

text: Moja wtyczka zainstaluje się poprawnie tylko wtedy, gdy użytkownik najpierw dezaktywuje, a następnie usunie poprzednio zainstalowaną wersję. Jeśli nie usuną poprzedniej wersji, instalacja albo się nie zakończy, albo wtyczka po zainstalowaniu nie działa. Chociaż byłoby miło zrozumieć, dlaczego tak się dzieje, wydaje się, że dla najlepszego doświadczenia użytkownika wtyczka powinna automatycznie dezaktywować i usunąć poprzednie wersje po instalacji. czy to możliwe?


title: wp_schedule_event w klasie

text: To jest moja (okrojona) wtyczka, w OOP: <?php /* Nazwa wtyczki: Cron Test URI wtyczki: http://www.mywebsite.com/ Opis: Wersja testowa: 1.0 Wymaga co najmniej: 3.0 */ class CronTest { funkcja publiczna __construct() { if (! wp_next_scheduled('dailyops')) { wp_schedule_event(time(), 'codziennie', 'dailyops'); } add_action( 'dailyops', array($this, 'do_this_daily') ); } function do_this_daily() { // rób coś codziennie error_log('codziennie'); } } $cronTest = nowy CronTest(); W każdym razie to nie działa (do_this_daily() nigdy nie jest uruchamiana). Próbowałem tego samego we wtyczce non-OOP (nie opartej na klasie) i działa bezbłędnie. Jak mogę sprawić, żeby to zadziałało tutaj, w klasie? EDYCJA: Zamieniłem początkową część kodu na pełną (nadal minimalną) wtyczkę, którą można przetestować.


title: Pokaż tylko najstarszy post autora

text:
Pracuję z mocno dostosowaną instalacją WP. Skonfigurowałem określony typ posta, taksonomię i role, które mogą używać tylko tego typu posta. Idealnie chciałbym ograniczyć członków tej roli przy użyciu tego typu wpisu do tworzenia tylko jednego wpisu. Wygląda na to, że może być więcej kłopotów niż jest to warte. Więc poza tym chciałbym wyświetlać tylko najstarsze z ich postów w widoku archiwum. Mam następujące, które tworzy wykonalną pętlę archiwum, ale nie odkryłem bitu „jeśli liczba postów> 1, to pokaż tylko najstarszy post”. $args = array ('post_type' => 'ticketlisting', 'posts_per_page' => 50, 'tax_query' => array (array ( 'taxonomy' => 'tier', 'field' => 'slug', 'terms ' => 'złota gwiazda' ) ) ); $pętla = nowe WP_Query( $args ); while ( $loop->have_posts() ): $loop->the_post(); tytuł(); echo '
'; $post_id = get_the_ID(); /* pokaż tutaj treść posta */ echo '
'; koniec;


title: Poczta do sortowania geograficznego

text: Chcę posortować wszystkie posty według lokalizacji GEO. Czy możesz podać mi pomysł, jak mogę to zrobić. Kiedy użytkownik przesyła post, powinienem poprosić o lokalizację jako tag, ale jednocześnie chcę, aby tagi działały jako tagi. Również Kategorie muszą działać jako kategoria. Nie wiem, jak je posortować. Jednak każdy post będzie zawierał adres jako powiązany z polem niestandardowym. Poprowadź mnie, jak to zrobić, lub przekieruj mnie do wtyczki, która działa. Pozdrowienia,


title: Dodaj klasę do wszystkich elementów listy wp_nav_menu

text: Mam `wp_nav_menu` do którego chcę dodać klasy do elementów listy. Wiem, że można to zrobić, wybierając „klasy css” z menu opcji na ekranie, ale wtedy muszę nadać każdemu „li” klasę. Mam menu o 2 głębokościach. (na przykład) * Wszystkie normalne li, które chcę nadać klasie lidepth1 * Wszystkie podmenu li, które chcę nadać klasie lidept2 Czy jest to możliwe w funkcji `wp_nav_menu`? Przeszukałem kodeks, ale znalazłem tylko „link przed” i „link po”, ale nie sądzę, że tego potrzebuję.


title: Treść przesłana przez Wordpress

text: Jakie jest najlepsze podejście do zbudowania tej strony w wordpressie: * 2 niestandardowe poziomy użytkownika (studenci, pracownicy). * pracownicy używają standardowego backendu wordpress, studenci publikują z frontendu. * jedna sekcja serwisu zawiera treści przesłane przez użytkowników (tytuł, treść, obraz). * tworzenie postów frontendowych (najlepiej niestandardowy typ postów). * login do frontendu i przypomnienie hasła Sprawdziłem buddypress, ale wydaje się, że jest za duży na to, czego potrzebuję. Idealnie chciałbym spróbować użyć jednej wtyczki do przesyłania i logowania oraz skonfigurować niestandardowe typy postów w functions.php. Jakieś sugestie?


title: the_content nie zawiera adresów URL obrazów bloga

text: Używam wtyczki jQuery Image Lazy Loading Plugin na moim blogu WP 3.3.1, jednak odkryłem, że `the_content` _nie_ zawiera adresów URL obrazów, więc `preg_replace`, że ta funkcja nie może znaleźć żadnych adresów URL obrazów do zastąpienia. function filter_the_content($zawartość) { if (is_feed()) { return $zawartość; } return preg_replace_callback('/(<\s*img[^>]+)(src\s*=\s*"[^"]+")([^>]+>)/i', array($ this, 'preg_replace_callback'), $content);} To, co próbuję ustalić, to gdzie jest przekazywana `$content` (i dlaczego nie zawiera adresów URL obrazów). `add_filter('the_content', array( $this, 'filter_the_content'));` Znalazłem ten problem z innymi wtyczkami z leniwym ładowaniem obrazu WP, więc nie jest zlokalizowany w tej konkretnej wtyczce.Wyciągam obrazy mojego bloga z tego kodu w `single-blog.php`: <?php while(the_repeater_field('blog_images')): if(get_sub_field('blog_image_link')) { ?><a href="<?php the_sub_field('blog_image_link'); ?>"><img src="<?php the_sub_field('blog_image'); ?>"/><?php ; }else { ?><img src="<?php the_sub_field('blog_image'); ?>"/><?php ; } koniec; ?>


title: Wyszukaj sklepy (pole niestandardowego kodu pocztowego) w promieniu 5, 10, 15 mil od wprowadzonego przez użytkownika kodu pocztowego. Modyfikacja kodu

text: Szukałem rozwiązania do wyszukiwania lokalizacji dla wordpress. Najlepsze rozwiązanie, jakie znalazłem, to http://mondaybynoon.com/2010/02/22/store-locator-wordpress-pods Problem polega na tym, że to robię nie chcesz używać podów i zamiast tego chcesz wyszukiwać w niestandardowych polach posta. Mam osobną tabelę ze wszystkimi brytyjskimi kodami pocztowymi + lat, danymi dziennika. Oto funkcja. funkcja mbn_get_stores_by_location ( $ kod pocztowy, $ promień ) { global $ wpdb; $promień = intval( $promień ); // najpierw musimy pobrać współrzędne źródłowe $sql = "SELECT `szerokość`, `długość` FROM `uk_postcodes` WHERE `postcode` = '$kod pocztowy'"; $coords = $wpdb->get_row($sql); // teraz otrzymamy inne kody pocztowe w promieniu, uporządkowane według odległości $sql = "SELECT uk_postcodes.postcode, ( 3959 * acos( cos( radians( $coords->latitude) ) * cos( radians( uk_postcodes.latitude ) ) * cos( radians( uk_postcodes.longitude ) - radians( $coords->longitude ) ) + sin( radians( $coords->latitude ) ) * sin( radians( uk_postcodes.latitude ) ) ) ) AS odległość Z uk_kodów pocztowych odległość <= $promień LUB odległość JEST NULL ORDER BY odległość"; $nearby_postcodes = $wpdb->get_results($sql); // musimy przechowywać zipy, aby zbudować zapytanie podów $target_postcodes = array(); foreach ($nearby_postcodes jako $nearby_postcode) { array_push($target_postcodes, $nearby_postcode->postcode); } // będziemy przechowywać wyniki w miarę postępu $store_results = array(); if( count( $target_postcodes > 0 ) ) { $final_target_postcodes = implode(',', $target_postcodes); if( strlen( $final_target_postcodes > 0 ) ) { // złapmy dane $stores = new Pod('stores'); $stores->findRecords('id ASC', 9, 't.postcode IN (' . $final_target_postcodes . ')'); $dane_magazynu = tablica(); while ( $stores->fetchRecord() ) { $store_data['id'] = $stores->get_field('id'); $store_data['name'] = $stores->get_field('name'); $store_data['slug'] = $stores->get_field('slug'); $store_data['address'] = $stores->get_field('address'); $store_data['city'] = $stores->get_field('city'); $store_data['stan'] = $stores->get_field('stan'); $store_data['kod pocztowy'] = $stores->get_field('kod pocztowy'); foreach ($nearby_postcodes as $nearby_postcode) { if( $store_data['postcode'] == $nearby_postcode->postcode ) { $store_data['distance'] = intval( $nearby_postcode->distance ); } } array_push( $store_results, $store_data ); unset( $store_data ); } ussort( $store_results, "mbn_cmp" ); } } return $store_results; } Zakładam, że muszę zmienić $stores = new Pod('stores'); $stores->findRecords('id ASC', 9, 't.postcode IN (' . $final_target_postcodes . ')'); aby odzwierciedlić query_posts .. Wypróbowałem wiele odmian $stores = query_posts('meta_key=post_code&meta_value='. $final_target_postcodes .''); bezskutecznie .. Czy ktoś mógłby mi dać wskazówkę we właściwym kierunku?


title: ABSPATH nie działa! Jakiś pomysł dlaczego?

text: Oto co w moim wp-config.php : if ( !defined('ABSPATH')) define('ABSPATH', dirname(__FILE__).'/'); Dzwonię z katalogu plugin/pluginName do: require_once( ABSPATH . 'wp-includes/user.php'); Ale zwraca: Ostrzeżenie: require_once(ABSPATHwp-includes/user.php) [function.require-once]: nie udało się otworzyć strumienia: Brak takiego pliku lub katalogu w /home/------/wp-content/ plugins/---/---.php w wierszu 43 Błąd krytyczny: require_once() [function.require]: Nieudane otwarcie wymaganego 'ABSPATHwp-includes/user.php' (include_path='.:/usr/lib/php :/usr/local/lib/php') w /home/------/wp-content/plugins/---/---.php w wierszu 43 Masz pojęcie, dlaczego pojawia się ten błąd? Jakieś rozwiązanie? Dziękuję.


title: Utrzymywanie zsynchronizowanych stron WP związanych z inscenizacją/produkcją

text: To jest bardziej ogólne pytanie dotyczące najlepszych praktyk w witrynie WP. Problemem, który napotykam u wielu moich klientów, jest utrzymywanie dwóch identycznych instalacji WP (staging i produkcja). Nalegają, aby zobaczyć zmiany przed wejściem na żywo. Jednak w przypadku struktury WP wymagałoby to ciągłego czyszczenia i ponownego importowania baz danych oprócz aktualizacji plików motywów. Czy istnieje prosta odpowiedź, która pozwoliłaby mi na utrzymanie dwóch identycznych witryn WP przy jak najmniejszej liczbie problemów? Z góry dziękuję za pomoc! Jake


title: dodawanie niestandardowej meta, a także przeglądanie postów

text:
Chwytam dwa zestawy niestandardowych meta i przeglądam posty, kolejność idzie: niestandardowa meta1, posty, niestandardowe meta2. ale z jakiegoś powodu drugi zestaw niestandardowych meta nie pojawi się, jeśli dodam pętlę postów. czy niestandardowa meta musi znajdować się w pętli? wydaje się działać, jeśli nie ma wywołania pętli. oto jak wygląda mój kod:

 <?php if ( get_post_meta($post->ID, 'column1title', true) ) : ?> <? php echo get_post_meta($post->ID, 'tytuł_kolumny', prawda) ?> <?php endif; ?>
 <?php if ( get_post_meta($post->ID, 'kolumna1', prawda) ) : ?> <?php echo get_post_meta($post->ID, 'kolumna1', prawda) ?> < ?php endif; ?>

 Najnowsze wiadomości
 <?php $args = array( 'post_type' => 'post'); $post_query = nowe WP_Query($args); if($post_query->have_posts() ) { while($post_query->have_posts() ) { $post_query->the_post(); ?>
<a href="<?php echo get_permalink(); ?>"><?php the_title(); ?>

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

 <?php if ( get_post_meta($post->ID, 'kolumna3tytul', prawda) ) : ?> <?php echo get_post_meta($post->ID, 'kolumna3tytul', prawda) ?> <?php endif; ?>
 <?php if ( get_post_meta($post->ID, 'kolumna3', prawda) ) : ?> <?php echo get_post_meta($post->ID, 'kolumna3', prawda) ?> < ?php endif; ?>

 jest na stronie, więc myślę, że $post->ID ustawia identyfikator na ostatni post, dlatego nie pobiera żadnej meta, ponieważ nie ma meta dla ostatniego posta. ale nie wiem, jak to obejść.


title: Dodanie <select> z javascriptem do paska administracyjnego. Działa w Chrome/Safari, nie w Firefoksie

text:
Próbuję dodać nowy element menu do paska administracyjnego WordPressa. Pozycja podmenu zawiera listę rozwijaną umożliwiającą przełączanie motywów. W Firefoksie z `href => false` generował `<a href="">` i kiedy kliknąłem wybierz, przeładował stronę. Zmieniłem to na `<a href="#">`. To naprawiło ponowne ładowanie strony po kliknięciu przycisku wyboru ... ale skrypt java nie działa. Sam kod działa dobrze w Chrome i Safari na Macu. Nie testowałem jeszcze IE ani żadnej przeglądarki w systemie Windows. W Firefoksie na Macu nic nie robi. Oto kod wygenerowany przez wtyczkę:
 Przełącz motywy

 <option value="http://themes.fusionized.com?wptheme=Abstract" style="color: #000; text-shadow: none;" >Streszczenie</option> <option value="http://themes.fusionized.com?wptheme=Ambience" style="color: #000; text-shadow: none;">Atmosfera</option> </select>

 Nic wyszukanego w kodzie do generowania elementów paska administratora... $wp_admin_bar->add_menu( array( 'id' => 'switch_themes', 'title' => __( 'Przełącz motywy', 'textdomain' ), 'href' => '#' ) ); $wp_admin_bar->add_menu( array( 'parent' => 'switch_themes', 'title' => $theme_switcher->theme_switcher_markup('dropdown'), 'href' => '#' ) );


title: Szukasz wtyczek, które powiadamiają użytkowników o odpowiedziach na komentarze

text: Czy istnieje wtyczka, która powiadamia użytkowników o odpowiedziach na komentarze? Nie chcę powiadomienia e-mail, ale coś na pasku bocznym, gdzie użytkownik może kliknąć i zobaczyć, na które posty otrzymały odpowiedzi. Coś jak subskrypcja?


title: Czy jest jakaś wtyczka wordpress do przesyłania obrazów i podpisów na wiele stron raz?

text: Cześć, mam kilka stron, które wymagają tych samych obrazów i podpisów, czy istnieje wtyczka wordpress, która pozwoliłaby na to przy 1 przesłaniu?


title: Zapobiegaj renderowaniu shortcode przez wordpress w poście

text: Załóżmy, że mam krótki kod `[list]`. Chcę mieć post wyjaśniający, jak używać shortcodes (dokumentacja mojego motywu). Jak mogę mieć nagłówek, taki jak > `[list type="arrow"] Tag Shortcode` Obecnie wordpress zepsuje go, konwertując `[list type="arrow"]` na nieprawidłowy kod HTML


title: Utwórz unikalny plik robots.txt dla każdej witryny w instalacji wielostanowiskowej

text: Czy ktoś wie, jak mogę mieć unikalny plik robots.txt dla każdej domeny obsługiwanej przez moją wp-multisite-installation? Szukałem wtyczek, ale nie mogłem znaleźć niczego odpowiedniego.


title: Jak wyłączyć menu „Wydajność” W3 Total Cache w trybie wielostanowiskowym?

text: Natknąłem się na następujący artykuł W3 Total Cache - Jak wyłączyć menu „Wydajność” w trybie wielostanowiskowym? Jednak po przetestowaniu go z najnowszą wersją WordPress 3.7 i W3 Total Cache v0.9.3 wydaje się, że już nie działa. Jak mogę zaktualizować kod z powyższego linku, aby działał Mam również następujący kod, który działa, usuwa „Wydajność” z górnego paska administratora //Usuń funkcję wydajności ds_w3tc_remove_adminbar() { global $wp_admin_bar; if ( ! is_super_admin() ) { $wp_admin_bar->remove_menu('w3tc'); } } add_action( 'admin_bar_menu','ds_w3tc_remove_adminbar',999);


title: dodawać obrazy do paginacji wordpress?

text:
Pracuję z pustym motywem, a mój plik nav.php wygląda tak

<?php next_posts_link('« Starsze Wpisy') ?>

<?php previous_posts_link('Nowsze wpisy »') ?>
 Moje pytanie brzmi: jak to zrobić zmienić linki tekstowe na linki obrazkowe?


title: Tworzenie wielu pętli na stronie podkategorii

text: Mam stronę główną, która składa się z 7 kategorii wyprowadzanych przez wp_list_categories, każdy li zawiera konkretnie jeden identyfikator. Kategorie te są kierowane do category-page.php specjalnie zbudowanego dla każdej kategorii. Teraz każda kategoria ma podkategorie. Dlatego na każdej ze stron kategorii chcę utworzyć niestandardowe zapytania dla każdej podkategorii. Przykład: kategoria Weightloss na stronie głównej, linki do strony category-weightloss.php. W Weightloss istnieje sześć podkategorii. Jaki jest najlepszy sposób, aby utworzyć sześć różnych zapytań, w oddzielnych divach, abym mógł je ostylować? Przejrzałem WP_Query, ale nie jestem pewien, jaki jest najlepszy i najbardziej odpowiedni sposób, aby to zrobić.


title: Usuwanie lub ograniczanie dostępu do szablonów stron dla roli edytującego

text: Mam pytanie dotyczące ograniczenia dostępu do szablonów stron dla redaktorów blogów, którzy mogą tworzyć nowe strony w przyszłości. Podczas mojego budowania musiałem stworzyć określone szablony, aby dodać niestandardowe funkcje dla określonych stron (tj. FAQs pobierane z CPT w oddzielnej pętli, ale pozwala edytorowi dodać akapit wprowadzający za pomocą standardowego typu postu „strona”) Teraz, gdy ja przekazać witrynę, chcę się upewnić, że te szablony nie będą ponownie wykorzystywane przez redaktorów witryny podczas tworzenia nowych stron. Czy istnieje sposób na ograniczenie dostępnych szablonów stron według roli użytkownika? A może można po prostu całkowicie usunąć menu rozwijane „Szablon strony”? Mogę użyć Adminimize (http://wordpress.org/plugins/adminimize/), aby usunąć menu rozwijane, ale etykieta nadal pozostaje. Dzięki, Devin


title: Dostosuj wielokolumnową mapę tagów, aby pobrać określony typ posta

text:
Używam wtyczki o nazwie „Multi-Column Tag Map”, która pozwala wyświetlić wszystkie użyte tagi i uporządkować je w kolejności alfabetycznej. Ta wtyczka działa dobrze w zwykłym typie posta, ale nie działa na niestandardowym typie posta, który stworzyłem. Utworzyłem nowy typ postu o nazwie „książki” i ma dodatkową taksonomię (Tagi) „Writers” i „Tags”. Śledziłem to, aby utworzyć niestandardowy typ posta: http://justintadlock.com/archives/2010/04/29/custom-post-types-in-wordpress Jak to dostosować, aby pobrać moje tagi z niestandardowego typu posta ? To jest kod wtyczki: -- kod usunięty, zaktualizowana wersja poniżej. **Aktualizacja:** Ta wtyczka w mojej witrynie wyświetla listę wszystkich tagów używanych w książkach. Więc użytkownik może po prostu przejść do tej strony i przeglądać artykuły/książki według tagów, które zostały użyte. Próbowałem też rozwiązania Helgatheviking, jest podobne do wtyczki (Multi-Column Tag Map). Ale w międzyczasie będę trzymał się dostosowywania wtyczki, ponieważ wtyczka zapewnia już pewne formatowanie. potrzebuję jedynieradzić sobie z get_terms(). Mój obecny problem polega na tym, że gdy używam rozwiązania wtyczki Helgatheviking lub Multi-Column Tag Map, oba używają get_terms(). a get_terms() pobiera tylko tagi, które znajdują się w moich postach, a nie w moim niestandardowym typie posta („książki”). Chciałem pobrać tagi z mojego niestandardowego typu posta. Więc zrobiłem małe wyszukiwanie i znalazłem to get_terms_by_post_type() przez Bainternet. Myślę, że jest to rozwiązanie w pobieraniu tagów do określonego typu post-get_terms(). Tak właśnie zrobiłem (kod poniżej), Niestety mam błąd w moim foreach(). Było napisane „Ostrzeżenie: Nieprawidłowy argument podany dla foreach() w mctagmap.php w wierszu 366” ** Dodatkowe szczegóły: ** post-type i'm targeting = 'the_books' taksonomia, na którą celuję = 'book_tags', 'book_writers ' -- To może zabrzmieć głupio, ale poniżej używam 'post_tag' zamiast któregokolwiek z tych dwóch, ponieważ chcę kierować reklamy na te dwa. **mctagmap.php** (zmodyfikowana wersja) <?php /* Nazwa wtyczki: Wielokolumnowy identyfikator URI wtyczki mapy tagów: http://tugbucket.net/wordpress/wordpress-plugin-multi-column-tag-map/ Opis: Wielokolumnowa mapa tagów wyświetla kolumnową i alfabetyczną (angielską) listę wszystkich tagów używanych w witrynie, podobnie jak na stronach indeksu książki. Wersja: 8.0 Autor: Alan Jackson Autor URI: http://tugbucket.net */ /* Copyright 2009-2011 Alan Jackson (alan[at]tugbucket.net) Ten program jest wolnym oprogramowaniem; możesz go rozpowszechniać i/lub modyfikować zgodnie z warunkami GNU General Public License opublikowanej przez Free Software Foundation; albo w wersji 2 Licencji, albo (według Państwa wyboru) w dowolnej późniejszej wersji. Ten program jest rozpowszechniany w nadziei, że będzie przydatny, ale BEZ ŻADNEJ GWARANCJI; bez dorozumianej gwarancji PRZYDATNOŚCI HANDLOWEJ lub PRZYDATNOŚCI DO OKREŚLONEGO CELU. Więcej szczegółów znajdziesz w Powszechnej Licencji Publicznej GNU. Powinieneś otrzymać kopię Powszechnej Licencji Publicznej GNUwraz z tym programem; jeśli nie, napisz do Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ /* uzyskaj warunki ograniczone do typu postu @ $taxonomies - (string|array) (wymagane) taksonomie, z których będą pobierane terminy. @ $args - (string|array) wszystkie możliwe argumenty get_terms http://codex.wordpress.org/Function_Reference/get_terms @ $post_type - (string|array) typów postów, aby ograniczyć warunki do @ $fields - (string ) Co zwrócić (domyślnie all) akceptuje ID,name,all,get_terms. jeśli chcesz użyć argumentów get_terms, $fields musi być ustawione na 'get_terms' */ function get_terms_by_post_type($taxonomies,$args,$post_type,$fields = 'all'){ $args = array( 'post_type' => ( array)$post_type, 'posts_per_page' => -1 ); $the_query = nowe WP_Query( $args ); $warunki = tablica(); while ($the_query->have_posts()){ $the_query->post(); $curent_terms = wp_get_object_terms ($post->ID, $taksonomia); foreach ($curent_terms as $t){ //unikaj duplikatów if (!in_array($t,$terms)){ $terms[] = $c; } } } wp_reset_query(); //zwróć tablicę obiektów term if ($fields == "all") return $terms; //zwróć tablicę identyfikatorów termów if ($fields == "ID"){ foreach ($terms as $t){ $re[] = $t->term_id; } return $re; } //zwróć tablicę nazw terminów if ($fields == "name"){ foreach ($terms as $t){ $re[] = $t->name; } return $re; } // pobierz warunki z argumentami get_terms if ($fields == "get_terms"){ $terms2 = get_terms( $taxonomies, $args ); foreach ($warunki jako $t){ if (in_array($t,$terms2)){$re[] = $t; } } return $re; } } function wp_mcTagMap($options='') { $ns_options = array( "columns" => "2", "more" => "Zobacz więcej", "hide" => "no", "num_show" => "5", "toggle" => "nie", "show_empty" => "tak", ); if(strpos($options, '|')) { $options = explode("|",$options); } else { $options = explode("&",$options); } foreach ($opcje jako $opcja) { $parts = explode("=",$opcja); $opcje[$części[0]] = $części[1]; } if ($options['kolumny']) { $ns_options['kolumny'] = $options['kolumny']; } else { $opcje['kolumny'] = 2; } if ($options['more']) { $ns_options['more'] = htmlentities($options['więcej'], ENT_QUOTES); } else { $options['more'] = "Wyświetl więcej"; } if ($options['ukryj']) { $ns_options['ukryj'] = $options['ukryj']; } else { $options['ukryj'] = "nie"; } if ($options['num_show']) { $ns_options['num_show'] = $options['num_show']; } else { $opcje['num_show'] = 5; } if ($options['toggle']) { $ns_options['toggle'] = $options['toggle']; } else { $options['toggle'] = "nie"; } if ($options['show_empty']) { $ns_options['show_empty'] = $options['show_empty']; } else { $options['show_empty'] = "tak"; } $show_empty = $options['show_empty']; if($show_empty == "tak"){ $show_empty = "0"; } if($show_empty == "nie"){ $show_empty = "1"; } $list = '
'; $gtargs = array('orderby' => 'count', 'order' => 'ASC', 'hide_empty' => $show_empty); $terms = get_terms_by_post_type('post_tag',$gtargs,'the_books','get_terms'); $grupy = tablica(); if( $tags && is_array( $tags ) ) { foreach( $tags as $tag ) { $pierwsza_litera = strtoupper( $tag->name[0] ); $grupy[ $pierwsza_litera ][] = $znacznik; } if( !empty ( $groups )) { $count = 0; $ile = liczba($grupy); // to tworzy 2 kolumny if ($options['columns'] == 2){ $firstrow = ceil($howmany * 0.5); $drugi rząd = ceil($ile * 1); $pierwszy1 = ceil(($ile * 0.5)-1); $drugi rząd1 = ceil(($ile * 1)-0); } //to tworzy 3 kolumny if ($options['columns'] == 3){ $firstrow = ceil($howmany * 0.33); $drugi rząd = ceil($ile *0,66); $pierwszy1 = ceil(($ile * 0,33)-1); $drugi rząd1 = ceil(($ile * 0.66)-1); } //to tworzy 4 kolumny if ($options['columns'] == 4){ $firstrow = ceil($howmany * 0.25); $drugi rząd = ceil(($ile * 0.5)+1); $pierwszy1 = ceil(($ile * 0,25)-1; $drugi rząd1 = ceil(($ile * 0.5)-0); $trzeci wiersz = ceil(($ile * 0,75)-0); $trzeci wiersz1 = ceil(($ile * 0,75)-1; } //to tworzy 5 kolumn if ($options['columns'] == 5){ $firstrow = ceil($ile * 0.2); $pierwszy1 = ceil(($ile * 0,2)-1); $drugi rząd = ceil(($ile * 0.4)); $drugi rząd1 = ceil(($ile * 0.4)-1); $trzeci wiersz = ceil(($ile * 0.6)-0); $trzeci wiersz1 = ceil(($ile * 0.6)-1); $czwarty rzut = ceil(($ile * 0.8)-0); $cztery rzut1 = ceil(($ile * 0,8)-1); } foreach( $groups as $letter => $tags ) { if ($options['columns'] == 2){ if ($count == 0 || $count == $firstrow || $count == $ secondrow) { if ($count == $firstrow){ $list .= "\n
\n"; $lista .="\n"; } else { $list .= "\n
\n"; $lista .="\n"; } } } if ($options['columns'] == 3){ if ($count == 0 || $count == $firstrow || $count == $secondrow) { if ($count == $secondrow ){ $list .= "\n
\n"; $lista .="\n"; } else { $list .= "\n
\n"; $lista .="\n"; }} } if ($options['columns'] == 4){ if ($count == 0 || $count == $firstrow || $count == $secondrow || $count == $thirdrow) { if ($count == $thirdrow){ $list .= "\n
\n"; $lista .="\n"; } else { $list .= "\n
\n"; $lista .="\n"; } } } if ($options['columns'] == 5){ if ($count == 0 || $count == $firstrow || $count == $drugi rząd || $count == $trzeci rząd || $count == $fourthrow ) { if ($count == $fourthrow){ $list .= "\n
\n"; $lista .="\n"; } else { $list .= "\n
\n"; $lista .="\n";} } } $list .= '
'; $lista .="\n"; $lista .='
' . zastosuj_filtry( 'tytuł', $litera ) . '
'; $lista .="\n"; $list .= '
'; $lista .="\n"; $i = 0; foreach( $tags as $tag ) { $url = attribute_escape( get_tag_link( $tag->term_id ) ); $nazwa = zastosuj_filtry( 'tytuł', $tag->nazwa ); // $nazwa = UCfirst($nazwa); $i++; $liczba = $i; if ($options['ukryj'] == "tak"){ $num2show = $options['num_show']; $num2show1 = ($opcje['num_show'] +1); $toggle = ($options['toggle']); if ($i != 0 i $i <= $num2show) { $list .= '
' . $nazwa . '
'; $lista .="\n"; } if ($i > $num2show && $i == $num2show1 && $toggle == "no") { $list .= "
"."".$options['more']. ""."
"."\n"; } if ($i >= $num2show1){ $list .= '
' . $nazwa . '
'; $list .="\n"; } } else { $lista .= '
' . $nazwa . '
'; $list .="\n"; } } if ($options['hide'] == "tak" && $toggle != " nie" && $i == $counti && $i > $num2show) { $list .= "
"."".$options['więcej'].""."".$options['toggle']." "."
"."\n"; } $list .= '
'; $list .="\n"; $list .= '
'; $lista .="\n\n"; if ($opcje['kolumny'] == 3 || $opcje['kolumny'] == 2){if ( $liczba == $pierwsza1 || $liczba == $drugarowna1) { $lista .= "
"; } } if ($options['columns'] == 4){ if ( $count == $firstrown1 || $count == $secondrow1 || $count == $thirdrow1) { $list .= "
"; } } if ($options['columns'] == 5){ if ( $count == $firstrow1 || $count == $secondrow1 || $count == $thirdrow1 || $count == $fourthrow1) { $lista .= "
"; } } $liczba++; } } $lista .="
"; $list .= "

"; } else $list .= '
Przepraszamy, ale nie znaleziono żadnych tagów
'; print $lista ; } // koniec długiego kodu // krótki kod rozpoczyna funkcję sc_mcTagMap($atts, $content = null) { extract(shortcode_atts(array( "columns" => "2", "more" => "Zobacz więcej", "hide" => "nie", "num_show" => "5", "toggle" => "nie", "show_empty" => "yes", "name_divider" => "|", // dodano 09.02.11 "tag_count" => "no", "exclude" => "", "descriptions" => "nie", "szerokość" => "", "równe" => "nie", ), $atts)); if($show_empty == "tak"){ $show_empty = "0"; } if($show_empty == "nie"){ $show_empty = "1"; } if($width){ $tug_width = "style=\"width: ". $width ."px;\""; } if($equal == "tak" && $kolumny != "1"){ $equalize = 'mcEqualize'; } if($toggle != "nie"){ $toggable = "toggleYes";} else { $toggable = "toggleNo"; } $list = '
'; //$tags = get_terms('post_tag', 'order=ASC&hide_empty='.$show_empty.''); // nowy kod! $gtargs = array('orderby' => 'count', 'order' => 'ASC', 'hide_empty' => $show_empty); $terms = get_terms_by_post_type('post_tag',$gtargs,'the_books','get_terms'); /* wyklucz tagi */ foreach($tags as $tag){ $fl = mb_substr($tag->name,0,1); $ll = mb_substr($tag->nazwa,1); $tag->nazwa = $fl.$ll; if (preg_match('/(?<=^|[^\p{L}])' . preg_quote($tag->name,'/') . '(?=[^\p{L}]|$ )/ui', $exclude)) { unset($tag->name); } } $grupy = tablica(); if( $tags && is_array( $tags ) ) { foreach( $tags as $tag ) { /* wyklucz tagi */ if(isset($tag->name)){ // dodano 09.02.11if (strlen(strstr($tag->name, $name_divider))>0) { $tag->name = preg_replace("/\s*([\\".$name_divider."])\s*/" , "$1", $tag->nazwa); $tagParts = rozbij($name_divider, $tag->name); $tag->nazwa = $tagParts[1].', '.$tagParts[0]; } $pierwsza_litera = mb_strtoupper( mb_substr($tag->nazwa,0,1) ); /* Podziękowania dla Birgira Erlendssona */ $groups[ $first_letter ][] = $tag; ksort($grupy); } } if( !empty ( $groups )) { $count = 0; $ile = liczba($grupy); // to tworzy 2 kolumny if ($columns == 2){ $firstrow = ceil($howmany * 0.5); $drugi rząd = ceil($ile * 1); $pierwszy1 = ceil(($ile * 0.5)-1); $drugi rząd1 = ceil(($ile * 1)-0); } //to tworzy 3 kolumny if ($columns == 3){$pierwszy = ceil($ile * 0,33); $drugi rząd = ceil($ile * 0,66); $pierwszy1 = ceil(($ile * 0,33)-1); $drugi rząd1 = ceil(($ile * 0.66)-1); } //to tworzy 4 kolumny if ($kolumny == 4){ $firstrow = ceil($ile * 0.25); $drugi rząd = ceil(($ile * 0.5)+1); $pierwszy1 = ceil(($ile * 0,25)-1; $drugi rząd1 = ceil(($ile * 0.5)-0); $trzeci wiersz = ceil(($ile * 0,75)-0); $trzeci wiersz1 = ceil(($ile * 0,75)-1; } //to tworzy 5 kolumn if ($kolumny == 5){ $firstrow = ceil($ile * 0.2); $pierwszy1 = ceil(($ile * 0,2)-1); $drugi rząd = ceil(($ile * 0.4)); $drugi rząd1 = ceil(($ile * 0.4)-1); $trzeci wiersz = ceil(($ile * 0.6)-0); $trzeci wiersz1 = ceil(($ile * 0.6)-1); $czteryrzut = cel(($ile * 0.8)-0); $czteryrzut1 = ceil(($ile * 0.8)-1); } foreach( $groups as $letter => $tags ) { if ($columns == 2){ if ($count == 0 || $count == $firstrow || $count == $secondrow) { if ( $count == $firstrow){ $list .= "\n
\n"; $lista .="\n"; } else { $list .= "\n
\n"; $lista .="\n"; } } } if ($columns == 3){ if ($count == 0 || $count == $firstrow || $count == $secondrow) { if ($count == $secondrow){ $list . = "\n
\n"; $lista .="\n"; } jeszcze { $list .= "\n
\n"; $lista .="\n"; } } } if ($kolumny == 4){ if ($liczba == 0 || $liczba == $pierwszy rząd || $liczba == $drugi rząd || $liczba == $trzeci rząd) { if ($liczba = = $thirdrow){ $list .= "\n
\n"; $lista .="\n"; } else { $list .= "\n
\n"; $lista .="\n"; } } } if ($kolumny == 5){ if ($liczba == 0 || $liczba == $pierwszy rząd || $liczba == $drugi rząd || $liczba == $trzeci rząd || $liczba == $ fourrow ) { if ($count == $fourthrow){ $list .= "\n
\n";$lista .="\n"; } else { $list .= "\n
\n"; $lista .="\n"; } } } $list .= '
'; $lista .="\n"; $lista .='
' . zastosuj_filtry( 'tytuł', $litera ) . '
'; $lista .="\n"; $list .= '
'; $lista .="\n"; $i = 0; uasort( $tags, create_function('$a, $b', 'return strnatcasecmp($a->nazwa, $b->nazwa);') ); // dodano 09.02.11 foreach( $tags as $tag ) { /* wyklucz tagi */ if(isset($tag->name)){ // dodano 9.28.11 if($tag_count == "yes"){ $mctagmap_count = ' ('.$tag->liczba.')'; } $url = atrybut_escape( get_tag_link( $tag->term_id ) ); $nazwa = zastosuj_filtry( 'tytuł', $tag->nazwa ); if($descriptions == "tak"){ $mctagmap_description = '' . $tag->opis . ''; } //$nazwa = UCfirst($nazwa); $i++; $liczba = $i; if ($ukryj == "tak"){ $num2show = $num_show; $num2show1 = ($num_show +1); //$toggle = ($opcje['toggle']); if ($i != 0 i $i <= $num2show) { $list .= '
' . $nazwa . „”. $mctagmap_count . $mctagmap_description . '
'; $lista .="\n"; } if ($i > $num2show && $i == $num2show1 && $toggle == "no") { $list .= "
"."".$more.""."
"."\n"; } if ($i >= $num2show1){ $list .= '
' . $nazwa . ''. $mctagmap_count . $mctagmap_description . '
'; $lista .="\n"; } } else { $list .= '
' . $nazwa . '' . $mctagmap_count . $mctagmap_description . '
'; $lista .="\n"; } } } if ($hide == "tak" && $toggle != "nie" && $i == $counti && $i > $num2show) { $list .= "
 "."".$more.""."".$toggle.""."
"."\n"; } $lista .= '
'; $lista .="\n"; $lista .= '
'; $lista .="\n\n"; if ($kolumny == 3 || $kolumny == 2){ if ( $liczba == $firstrown1 || $liczba == $drugirown1) { $lista .= "
"; } } if ($kolumny == 4){ if ( $liczba == $firstrown1 || $liczba == $sekutonięcie1 || $count == $thirdrow1) { $list .= "
"; } } if ($kolumny == 5){ if ( $liczba == $pierwszy rząd1 || $liczba == $drugi rząd1 || $liczba == $trzeci rząd1 || $liczba == $czwarty rząd1) { $lista .= "
"; } } $liczba++; } } $lista .="
"; $list .= "

"; } else $list .= '
Przepraszamy, ale nie znaleziono żadnych tagów
'; return $lista; } add_shortcode("mctagmap", "sc_mcTagMap"); // zakończ funkcję shortcode mctagmap_donate($links, $file) { $plugin = plugin_basename(__FILE__); // utwórz link if ($file == $plugin) { return array_merge( $links, array( sprintf( 'Przekaż darowiznędo rozwoju mctagmap', $plugin, __('Donate') ) )); } return $linki; } add_filter( 'plugin_row_meta', 'mctagmap_donate', 10, 2 ); // JS i CSS add_action('wp_head', 'mcTagMapCSSandJS'); funkcja mcTagMapCSSandJS(){ $mctagmapVersionNumber = "8.0"; $mctagmapCSSpath = './wp-content/themes/'.get_template().'/multi-column-tag-map/mctagmap.css'; echo "\n"; if(file_exists($mctagmapCSSpath)){ echo '<link rel="stylesheet" href="'.$mctagmapCSSpath.'?ver='.$mctagmapVersionNumber.'" type="text/css" media="screen" / >”; } else { echo '<link rel="stylesheet" href="'.WP_PLUGIN_URL.'/multi-column-tag-map/mctagmap.css?ver='.$mctagmapVersionNumber.'" type="text/css" media ="ekran" />'; } echo "\n"; echo ''; echo "\n\n"; } // przepełnionerite single_tag_title() add_filter('single_tag_title', 'mctagmap_single_tag_title', 1, 2); funkcja mctagmap_single_tag_title($prefiks = '') { global $wp_query; if ( !is_tag() ) return; $tag = $wp_query->get_queried_object(); if (! $tag) return; $my_tag_name = str_replace('|', '', $tag->name); if ( !empty($my_tag_name)) { if ( $display ) echo $prefix . $my_tag_name; w przeciwnym razie zwróć $my_tag_name; } } ?>


title: Przekieruj na adres URL, jeśli minęło x dni

text: Załóżmy, że mam ten adres URL: **www.example.com/myCPT/post** , tutaj chcę sprawdzić, czy minęły 3 dni od utworzenia posta na przekierowanie na **www.example.com/myCPT/post /statystyki**. W ciągu tych 3 dni użytkownik nie powinien mieć dostępu do **www.example.com/myCPT/post/stats**. Ale musi to być dynamiczne, za każdym razem, gdy tworzony jest post, aby sprawdzić jego adres URL i dodać 3 dni czasu, zanim ten adres URL będzie dostępny **www.example.com/myCPT/post/stats** Na przykład będę miał post1, post2, post3 i tak dalej i za każdym razem, gdy post zostanie utworzony, aby dodać 3 dniowe ramy czasowe, aż pojawi się **"/post/stats"**. Potrzebuję tego samego dla **"/post/comments"** : ten adres powinien być dostępny po 3 dniach, a jeśli ktoś spróbuje uzyskać dostęp wcześniej, powinien zostać przekierowany na adres URL posta: **"/post"** Tak trochę badań i znalazłem to: * `wp_redirect ($lokalizacja, $status );` dla przekierowania * `<?php echo get_the_date(); ?>` i `<?php echo get_the_time(); ?>` dla uzyskania daty/godziny postu Znaleziono fragment, który może być pomocny : if ( time() - strtotime( $posts[0]->post_date_gmt ) > ( 30 * 24 * 60 * 60 )) { / / ZRÓB COŚ } return $posts; } Późniejsza edycja : Punkty końcowe `"/stats"` i `"/comments"` są budowane w następujący sposób: function wpa121567_rewrite_endpoints(){ add_rewrite_endpoint( 'stats', EP_PERMALINK ); } add_action( 'init', 'wpa121567_rewrite_endpoints' ); Jakieś sugestie, jak mogę to osiągnąć?


Używam `admin_footer-{$hook_suffix}` do selektywnego drukowania skryptów na nowej stronie posta i stronie komentarzy. Ten hak jest amortyzowany w wersji 3.1. Widzę, że istnieje `admin_print_scripts-{$hook_suffix}`, ale nie jest on drukowany w stopce, a raczej w nagłówku przed załadowaniem jQuery lub innych rzeczy. Jak mogę selektywnie drukować skrypty w stopce niektórych stron administracyjnych?


title: Wbudowany odtwarzacz audio?

text: Byłem pewien, że WordPress ma wbudowany podstawowy odtwarzacz audio. Czy się mylę? Nie mogę znaleźć nigdzie żadnego dowodu, tylko wtyczki?


title: Zmiana domyślnego komunikatu „Wtyczka aktywowana”

text: Za każdym razem, gdy administrator w WordPress aktywuje wtyczkę, po ponownym załadowaniu strony wtyczki pojawi się powiadomienie o pomyślnym zgłoszeniu aktywacji „Wtyczka aktywowana”. ![Zrzut ekranu wiadomości o aktywacji wtyczki](http://i.stack.imgur.com/Ux1kg.png) Czy istnieje sposób na zmianę tego tekstu, który pojawia się w powiadomieniu administratora, czy muszę użyć własnej wiadomości? Ponadto, jeśli muszę użyć niestandardowej wiadomości, czy spowoduje to pominięcie domyślnego komunikatu „Wtyczka aktywowana”? **Powiązane pytania:** * Odinstaluj, aktywuj, dezaktywuj wtyczkę: typowe funkcje i instrukcje * Jak wyświetlić niestandardową wiadomość podczas aktywacji wtyczki? * Jaki jest sens składni gettext? **Duplikat:** Dziękujemy Pieterowi za znalezisko: * Jak usunąć domyślną „wtyczkę aktywowaną” w WordPressie **Dodatkowe zasoby:** * Funkcja gettext() > # **Uwaga** > > Pamiętaj, że chociaż Filtr 'gettext' jest stosowany tylko podczas wywołań > funkcji `translate()`, `translate()` jest używany przez praktycznie wszystkie inne funkcje > i18n w _i18n.php_. Obejmują one wszystkie funkcje wymienione tutaj > w tym poście na „Składnia Gettext”.


title: Nagłówki już wysłane w Pluggable.php / homepage i błąd wp-login

text: Po migracji strony na inne konto na tym samym hoście zacząłem otrzymywać dziwne błędy. Najpierw napotkałem błąd gdzie na stronie logowania zostałem poproszony o włączenie Cookies. I po tym, jak usunąłem tę część pliku w wp-login.php (wyłączyłem, że testowe ciasteczko wp jest ustawiane, gdy użytkownik jest na ekranie logowania wp). Teraz, kiedy odwiedzam moją stronę bez www, więc po prostu nazwa_domeny.com, a kiedy odwiedzam wp-login.php i próbuję się zalogować, otrzymuję błąd już wysłanych nagłówków, dla pliku pluggable.php w wierszu 897 próbowałem wszystkich standardowych rozwiązania, w tym: * Obniżenie wersji Wordpress * Resetowanie folderu wtyczek * Sprawdzałem, czy moje pliki są uruchamiane i kończone regularnie za pomocą * Sprawdzanie adresów URL witryn w phpMyAdmin, resetowanie struktury permalinków Moje witryny na dwóch kontach mają _dokładnie te same pliki, bazy danych i ustawienia_ Przeprowadziłem poprawnie migrację i zmienił linki w bazie danych. Obie strony są na nowym serwerze, który ma dokładnie taką samą konfigurację :) Jakieś pomysły? Z góry dziękuję


title: Jak wyświetlić zawartość strony w szablonie strony?

text: W mojej witrynie WordPress stworzyłem niestandardowy szablon strony, który zawierał niestandardowe zapytanie [za pomocą `WP_Query()`]. Dzięki temu zapytaniu mogę idealnie uzyskać posty z określonej kategorii. Ale chcę pokazać zawartość strony wraz z pytanymi postami. Rzecz będzie wyglądała następująco: --------------------------- ## Zawartość strony z nagłówkiem strony ### Nagłówek w zapytaniu o treść zapytania --- ------------------------   * Co mogę zrobić?


title: Wersje TwentyTwelve

text: Tworzę motyw potomny dla TwentyTwelve, ale mój host buforuje moje pliki, więc nie widzę zmian, które wprowadzam w moim pliku style.css. Czy istnieje sposób na wersjonowanie arkusza stylów dla mojego motywu podrzędnego? Jak TwentyTwelve w ogóle dodaje arkusz stylów? Nie widzę tego w header.php. Dziękuję


title: Pobierz etykietę z pola wyboru ACF

text:
Czuję, że to powinno być łatwe, ale z jakiegoś powodu nie mogę tego uruchomić? Na liście produktów mam kilka podobnych, ale wyrazistych kolorów. Muszę być w stanie uchwycić etykietę, aby pokazać ją użytkownikowi końcowemu (więc widzi pomarańczowy zamiast m_orange), ale potrzebuję również, aby wartość była odrębna, aby móc zastosować odpowiednią klasę do elementu. pomarańczowy : pomarańczowy m_orange : pomarańczowy fioletowy : fioletowy m_fioletowy : fioletowy w_fioletowy : fioletowy Mój kod: <?php while ( $the_query->have_posts() ) : $the_query->the_post(); $kolor = get_field('kolor'); ?> <?php foreach($color as $color_list){echo "
$color_list  /
";}?> <?php foreach( $color as $color_class){echo "

" ;}?> Próbowałem postępować zgodnie z instrukcjami na http://www.advancedcustomfields.com/resources/field-types /pole wyboru/ ale to nie zadziałało i nie mogę tego rozgryźć?


title: Dodawanie „aktywnej” klasy do niestandardowych taksonomii za pomocą walkera w functions.php

text:
Próbuję użyć następującego kodu w functions.php w celu wyświetlenia menu z kategoriami (właściwie taksonomiami niestandardowymi). Chcę po prostu, aby wyświetlał się aktywny na bieżącej stronie. Co ja robię źle? Widzę również, że wiersz `$category = get_category($mycatid);` nie wypełnia zmiennej `$category`. <?php class walker_archives extends Walker_Nav_Menu { funkcja publiczna start_el( &$wyjście, $item, $głębokość, $argumenty ) { $attributes = ''; ! pusty ( $item->attr_title ) i $item->attr_title !== $item->title i $attributes .= 'title="' .esc_attr( $item->attr_title ) .'"'; ! pusty ( $item->url ) i $attributes .= 'href="' .esc_attr( $item->url ) .'"'; $atrybuty = przyciąć( $atrybuty ); $title = apply_filters( 'the_title', $item->title, $item->ID ); $item_output = "$args->przed$args->link_before$title" . "$args->link_po$args->po"; $mycatid = $item->object_id; $kategoria = get_category($mycatid); $mycatslug = $kategoria->slug; $klasy = puste( $item->klasy ) ? array() : (tablica) $item->classes; $class_names .= in_array("current_page_item",$item->classes) ? ' aktywny ' : ''; $class_names = 'class="staysexy". esc_attr( $class_names ); $output .= $indent . '
ID . '" class="gatunek-". $mycatslug . '">'; $output .= apply_filters( 'walker_nav_menu_start_el' , $item_output , $item , $depth , $args ); } public function start_lvl( &$output ) { $output .= '
'; } public function end_lvl( &$output ) { $output .= '
'; } function end_el( &$output ) { $output .= '
'; } }?>


title: Media Popup filtruje wyniki według niestandardowej kategorii mediów

text: używam wp.media dla programu Media Uploader Popup http://mikejolley.com/2012/12/using-the-new-wordpress-3-5-media-uploader-in-plugins/ Utworzyłem nową kategorię o nazwie 'kategoria mediów' dla Biblioteki mediów, chciałbym filtrować wyniki według tej nowej kategorii. To jest mój obecny kod: custom_uploader = wp.media.frames.file_frame = wp.media({ title: 'Wybierz multimedia', button: { text: 'Choose Media' '}, multiple: true, library: { type: 'video /mp4' } }); Wielkie dzięki za pomoc.


title: Nie można zapisać posta z Wordpressa z "/etc/"

text: W mojej samoobsługowej witrynie Wordpress, jeśli utworzę post z "/etc/" (bez cudzysłowów) w dowolnym miejscu, otrzymuję komunikat 404 Not Found po zapisaniu posta. Zawijanie go w tagi, a nawet unikanie znaków (/etc/) nie działa. Próbowałem wyłączyć wszystkie moje wtyczki, ale to nie ma znaczenia. Wszelkie wskazówki będą bardzo mile widziane.


title: Tylko użytkownik Prześlij obraz Http Błąd

text: Przeszukałem wszystko i wypróbowałem kilka rzeczy. Zasadniczo, jako administrator, mogę bez problemu korzystać z polecanego obrazu i przesyłać go. Kiedy zmieniam role, nie mogę przesyłać obrazów, pojawia się błąd HTTP. * Ustawiłem upload_files i unfiltered_upload * Zmniejszyłem rozmiar obrazu * Dokładnie sprawdziłem uprawnienia do plików * Host mówi, że to wordpress, a nie serwer Czy ktoś ma pojęcie, co to może być?


title: Utrzymywanie liczby udostępnień społecznościowych po zmianie Wordpress Permalinks

text: Zamierzam zmienić permalinki wordpress i zrobię przekierowanie 301 ze starego na nowy adres URL. Ale problem polega na tym, w jaki sposób mogę utrzymać moje liczby udostępniania społecznościowego (takie jak Facebook, Twitter, Google + 1) po zmianie adresu URL. Dziękuję


title: Używanie skrótu do przechwytywania listy archiwów, oddzielone według roku

text:
Oto kod, który zmodyfikowałem, aby wyświetlał listę archiwalną każdego miesiąca, w którym publikowałem wiadomości. Co miesiąc oczywiście linki do archiwum z tego miesiąca. Mogę wtedy dołączyć krótki kod, gdziekolwiek zechcę. function my_archives($params, $content = null) { extract(shortcode_atts(array( 'type' => 'style1' ), $params)); ob_start(); ?> <?php wp_get_archives( array( 'typ' => 'miesięcznie' ) ); ?> <?php return ob_get_clean(); } add_shortcode('archiwa','moje_archiwa'); Jednak po prostu nie mogę dowiedzieć się, czytając stronę wp_get_archives (http://codex.wordpress.org/Function_Reference/wp_get_archives), jak zorganizować listę miesięcy z, powiedzmy, nagłówkiem roku. Więc teraz powyższy kod wyświetla się tak:
czerwiec 2014

maj 2014

kwiecień 2014
 itd. itd. itd. dla każdego roku i miesiąca (moje strona istnieje już od 11 lat, czyli ponad 100 linków w jednym blobie listy). Zastanawiałem się, czy w ogóle można zmienić listę na coś takiego: 2014

Czerwiec 2014

Maj 2014
 itd.
 2013

Grudzień 2014

Listopad 2014
 itd.
 Dziękuję!


title: Mój motyw nie wyświetla się na innych komputerach

text: Mam zainstalowany Wordpress na mydomain.org/blog i wszystko działa dobrze i elegancko z mojego komputera (localhost). Jednak gdy łączę się z blogiem z innego komputera, motyw (Twenty Twelve) znika i jest to zwykły tekst. Nie próbowałem instalować żadnych innych motywów. Pomoc? Edycja: adres URL na żądanie to http://boj.cc/blog


title: Czy można dodać krótki kod i tag html w opisie kategorii?

text:
Chcę dodać krótki kod (np. suwak) i tag html, taki jak `<h2>\-------- tekst -----</h2>`. Czy to jest możliwe? Próbowałem już, ale tak naprawdę nie działa. Wyświetlany jest tylko normalny tekst, nawet krótki kod lub tag html. Jakiś pomysł, jak to możliwe? chcę użyć tego do własnego motywu. mam jedną stronę produktu. ale wiele kategorii (np. 7) i każda kategoria będzie miała inny baner pokazu slajdów. a pod nim zdjęcie produktu i szczegóły. nie chcę robić każdej strony kategorii osobno, mogę pokazać krótki kod z opisu kategorii, wtedy mogę to zadziałać dla mnie. moim krótkim kodem będzie `[rev_slider slider]` kod strony kategorii <?php if ( category_description() ) : ?>
<?php echo wpautop(term_description() ); ?>
 <?php endif; ?> strona funkcji remove_filter( 'pre_term_description', 'wp_filter_kses' );


title: Gdzie jest najlepsze miejsce do użycia add_filter

text: Czy powinienem użyć funkcji `add_filter` w haczyku akcji `init` mojej wtyczki, czy tylko w głównym skrypcie wtyczki? Ponieważ czasami zauważyłem, że ludzie używają filtrów wszędzie i jeśli wstawię hak `init`, na jakiś przypadek byłoby już za późno. Czy są jakieś ogólne porady dotyczące pierwszeństwa podpięcia `action` i `filter`, dzięki czemu możemy mieć bardziej spójny styl kodu?


title: wyślij informacje z drugiej zakładki programu do przesyłania obrazów z grubej ramki

text:
w tym pytaniu odkryłem, jak utworzyć niestandardową kartę w programie do przesyłania obrazów. to jest kod: add_filter('media_upload_tabs', 'my_media_upload_tabs_filter'); function my_media_upload_tabs_filter($tabs) { unset($tabs["type_url"]); unset($tabs['biblioteka']); $newtab = array('ell_insert_gmap_tab' => __('Mapa Google','insertgmap')); return array_merge($tabs,$newtab); } add_action('media_upload_ell_insert_gmap_tab', 'media_upload_ell_gmap_tab'); function media_upload_ell_gmap_tab() { return wp_iframe('media_upload_ell_gmap_form', $errors ); } function media_upload_ell_gmap_form() { ?> echo media_upload_header(); ?>
Formularz HTML
 <?php } Teraz chcę użyć tej zakładki do wyboru funkcji obrazu. więc zmodyfikowałem kod wewnątrz zakładki w następujący sposób: <form enctype="multipart/form-data" method="post" action="">
Wybierz tło:
 Alternatywnie , możesz wybrać jeden z tych obrazów tła:
 <img style="float:left; margin:15px; cursor:pointer" id="background-Green-stripes" src="<?php bloginfo('url '); ?>/wp-content/themes/mytheme/images/background-Green-stripes-thumb.jpg"> wybierz to <img style="float:left; margin:15px; cursor:pointer" id="background-Pail-pink-squares.jpg" src="<?php bloginfo('url' ?>/wp-content/themes/mytheme/images/background-Pail-pink-squares-thumb.jpg"> wybierz to <img style="float:left; margin:15px; cursor:pointer" id="background-Purple-wall.jpg" src="<?php blogi nfo('adres URL'); ?>/wp-content/themes/mytheme/images/background-Purple-wall-thumb.jpg"> wybierz to </form> i próbowałem pobrać html z "window.send_to_editor", ale nie wiedziałem, jak... może jakikolwiek organizm może pomóc? zgubiłem się tutaj...


title: Podczas edytowania posta z niestandardowym polem meta wartości nie wyświetlają się poprawnie

text:
Postępowałem zgodnie z tym samouczkiem, aby utworzyć niestandardowe pole meta z prostym menu rozwijanym z dwiema opcjami. Mój kod znajduje się poniżej. Pola niestandardowe są zapisywane podczas tworzenia posta i edytowane, gdy zmieniam wartość i Aktualizuję. Ale kiedy przechodzę na stronę edycji postu, wartości nie są dynamiczne i wyświetlają poprawną wartość rozwijaną na podstawie ustawionej wartości meta. Więc jeśli utworzę post i ustawię opcję na Tak, przejdę do edycji, aby opublikować, pokazuje Nie, ale w niestandardowym polu meta pokazuje Tak, więc zapisuje poprawnie. Wiem, że wartości „Nie” i „Tak” powinny być dynamiczne i sprawdzić, czy ustawiono dowolną niestandardową meta, aby ją wyświetlić, ale nie jestem pewien, jaki jest kod. Wszelka pomoc z kodem jest mile widziana. Dzięki <? add_action('admin_menu', 'my_post_options_box'); function my_post_options_box() { add_meta_box('post_info', 'Handel', 'custom_post_info', 'post', 'side', 'high'); } //Dodaje aktualną funkcję pola opcji custom_post_info() { global $post; ?> <fieldset id="mycustom-div">

 Zaakceptować handel?
 <select name="cpi_dropdown_options" id="cpi_dropdown_options"> <opcja<?php wybrane( get_post_meta($post->ID, 'cpi_dropdown_options', true), 'Opcja 1' ); ?>>Nie</option> <opcja<?php wybrane( get_post_meta($post->ID, 'cpi_dropdown_options', true), 'Opcja 2' ); ?>>Tak</option> </select>

 </fieldset> <?php } add_action('save_post', 'custom_add_save'); function custom_add_save($postID){ // wywoływana po zapisaniu postu lub strony if($parent_id = wp_is_post_revision($postID)) { $postID = $parent_id; } if ($_POST['cpi_dropdown_options']) { update_custom_meta($postID, $_POST['cpi_dropdown_options'], 'cpi_dropdown_options'); } if ($_POST['cpi_text_option']) { update_custom_meta($postID, $_POST['cpi_text_option'], 'cpi_text_option'); } } function update_custom_meta($postID, $newvalue, $field_name) { // Aby utworzyć nową meta if(!get_post_meta($postID, $field_name)){ add_post_meta($postID, $field_name, $newvalue); }else{ // lub aby zaktualizować istniejącą meta update_post_meta($postID, $field_name, $newvalue); } } ?>


title: WordPress nie aktualizuje postu lub wyłącza wtyczkę zamiast pojawia się biała strona

text: Pracowałem w lokalnej witrynie WordPress i działa bez problemu. Następnie przesłałem go na serwer live w następujący sposób: * Przesłałem wszystkie moje lokalne pliki i foldery na serwer live. * Zaimportowano lokalną bazę danych do serwera Live. * Zmieniono linki w bazie danych z (localhost) na moją (domena na żywo). * zmieniono plik config.php, aby połączyć się z bazą danych. po wykonaniu tych czynności moja strona internetowa **(Front-end) działa świetnie bez żadnego problemu**. Ale kiedy zalogowałem się do mojego pulpitu i próbowałem wykonać jedną z następujących czynności ** zamiast tego pojawiła się biała strona bez żadnego błędu** : * Podczas próby **wyłączenia/aktywowania** dowolnej wtyczki. * Przy próbie **aktualizacji** dowolnego posta. * Przy próbie **opublikowania nowej** strony/postu. * Podczas **Usuwania** strony/postu. Próbowałem **tego rozwiązania, ale nie rozwiązałem problemu**: * Wyłączyłem wszystkie wtyczki, aby sprawdzić, czy nie powoduje konfliktu. * Próbowałem użyć domyślnego motywu zamiast niestandardowego motywu. **Aktualizacja:** Po włączeniu `define('WP_DEBUG', true);` jak mówi @s_ha_dum, mam to: * **Ostrzeżenie:** Nie można modyfikować informacji nagłówka - nagłówki już wysłane przez (wyjście rozpoczęte w /. ....../wp-content/themes/sbr/functions.php:670) w /......../wp-admin/post.php w wierszu 233. * **Ostrzeżenie:** Nie można modyfikować informacji nagłówka - nagłówki już wysłane przez (wyjście rozpoczęte w ............/wp-content/themes/sbr/functions.php:670) w /........ ...../wp-includes/pluggable.php w wierszu 896.


title: Wyświetlaj posty z tablicy identyfikatorów

text: Wynikiem zapytania do tej pory jest wydruk tablicy, Array ( [0] => 309 [1] => 10 ), 309 i 10 to poprawne identyfikatory postów, które chcę wyświetlić, oraz „Żadne posty nie były znaleziono” wynik trafienia „inny”. Mam pastebin z najbardziej aktualną kopią mojego kodu tutaj, http://pastebin.com/pZkQCf9y Oto zapytanie: <?php $ongoing_args = array( 'post_type' => 'promotions', 'meta_key' => 'sp_ongoingPromotion', 'meta_value' => 1 ); $current_args = array( 'post_type' => 'promotions', 'meta_key' => 'sp_endDate', 'meta_value' => date("R/m/d"), 'meta_compare' => '>=', ' orderby' => 'meta_value', 'order' => 'ASC' ); // Uzyskaj promocje, korzystając z przedstawionych powyżej argumentów. $ongoing_promotions = get_posts( $ongoing_args ); $current_promotions = get_posts( $current_args ); // Połącz tablice $all_promotions = array_merge( $ongoing_promotions, $current_promotions ); // Pobierz tylko identyfikator promocji $promotion_ids = wp_list_pluck( $all_promotions, 'ID' ); print_r($promotion_ids); // Wykonaj nowe zapytanie z tymi identyfikatorami, aby uzyskać poprawnie posortowaną listę promocji $args = array( 'post__in' => $promotion_ids, 'numberposts' => 5, 'post_status' => 'publish' ); $wp_query= null; $wp_query = nowe WP_Query(); $wp_query->zapytanie ($args ); $wp_query = nowe WP_Query($args); if($wp_query->have_posts()){ while($wp_query->have_posts()){ $wp_query->the_post(); ?> Jakakolwiek pomoc jest bardzo ceniona.


title: Baza danych programów telewizyjnych — najlepszy sposób na jej uporządkowanie?

text: Chcę utworzyć bazę danych programów telewizyjnych w Wordpress, która będzie miała następujący format adresu URL: /tvshows/friends/01/12/ * `/tvshows/` wyświetli wszystkie seriale * `/tvshows/friends/` wyświetli wszystkie sezony dostępne dla Friends TV Show * `/tvshows/friends/01/` wyświetli wszystkie odcinki Friends z sezonu 1 * `/tvshows/friends/01/12/` wyświetli informacje o 12. odcinku pierwszego sezonu A oto różne metody, o których myślałem: 1) Pierwszym pomysłem, który przyszedł mi do głowy, jest stworzenie **Strony i odpowiednie ich zagnieżdżenie**. Następnie utwórz 3 różne szablony stron (TVShow.php, Season.php i Episode.php) i odpowiednio dostosuj każdą stronę. Główną wadą jest to, że gdy pojawi się 200 seriali z 4 sezonami i 25 odcinkami każda (łącznie 20 000 stron), aktualizacja i znalezienie wszystkiego może być kompletnym bałaganem. (Kolejną wadą jest kanał RSS, chociaż można to rozwiązać za pomocą wtyczek) ![Programy telewizyjne - oparte na stronach](http://i.stack.imgur.com/r2QtU.png) 2) Niektórzy koledzy sugerują mi używanie * *Niestandardowe posty**, ale nie mają one struktury hierarchicznej i chociaż mógłbym wtedy użyć mod_rewrite, aby uczynić adresy URL ładnymi, myślę, że byłoby to jeszcze bardziej kłopotliwe niż używanie Pages. (Jest taka wtyczka, która zarządza niestandardowymi postami za pośrednictwem interfejsu użytkownika, chociaż nie mogę wymyślić, jak utworzyć hierarchiczną organizację) 3) Ostatnim pomysłem jest posiadanie ich jako **normalnych postów**, a następnie kategoryzowanie ich według nazwy serii, sezonu i odcinka w ten sposób unikając wszelkich niestandardowych kłopotów z postami i używając prostych funkcji API Wordpress do wyświetlania i wyświetlania wszystkiego. To są najlepsze/możliwe sposoby, jakie przychodzi mi do głowy. Opcja oparta na stronie może być najbardziej odpowiednia, chociaż skalowalna w bolesny sposób, gdy jest +500 stron. Jakieś pomysły, sugestie, jak to zorganizować? Z góry dziękuję! :)


title: Zmień format w page_links

text: Utworzyłem sekcję FAQ w mojej witrynie, która została podzielona na strony za pomocą procedury WP paginated_links. Nie jestem pewien, co jest przyczyną, ale gdy tylko chcę zmienić parametr formatu ze strony na coś innego, w momencie trafienia na stronę większą niż 1, WP przekierowuje przeglądarkę na stronę główną. To jest kod, którego używam if( get_query_var('p')) { $current = get_query_var('p'); } inny { $bieżący = 1; } $paginate_links = paginate_links( array( 'base' => '%_%', 'mid_size' => 5, 'format' => '?p=%#%', 'current' => $current, 'total ' => $suma ));


title: Wyświetl wszystkie paski boczne w metaboksie

text: Próbuję dodać metabox, aby wybrać pasek boczny na stronę. Do tworzenia metaboksów używam tej klasy Konstrukcja jest dość prosta: $meta_boxes[] = array( 'id' => 'sidebars_side', 'title' => 'Page Sidebar', 'pages' => array(' page', 'post'), 'context' => 'side', 'priority' => 'low', 'fields' => array( array( 'name' => 'Sidebars', 'id' => ' tst_sidebars', 'type' => 'select', 'options' => array( TUTAJ TABLICA PASEK BOCZNYCH ), 'multiple' => false, ) ) ); Ale nie mogę na miłość boską właściwie skonstruować tablicy. Sprawdziłem ten post, który jest fajny, ale jakoś utknąłem. Każda pomoc byłaby bardzo mile widziana.


title: Który KSES powinien być używany i kiedy?

text: Źródło WP pokazuje, że `wp_filter_kses` i `wp_filter_post_kses` są przekazywanymi danymi, które „oczekuje się, że zostaną zmienione z ukośnikami”. Z drugiej strony, `wp_kses_data` to przekazywane dane, które „oczekuje się, że nie zostaną zmienione”, a `wp_kses_post` ma kod, który wygląda jak wp_kses_data. Na ile bezpieczne jest przekazywanie nieznanych (pod względem ucieczki z ukośnikami) danych do tych funkcji? Czy pierwszy zestaw może być preferowany nad drugim, czy też preferowanie drugiego zestawu jest bezpieczniejsze? A może jest to przypadek, w którym absolutnie musisz znać stan swoich danych pod względem ukośnych? --update-- Zastanawiam się teraz, że jeśli nie wiesz, czy dane są uciekinierami, możesz użyć `wp_kses_data(stripslashes_deep( $data) );` i uruchomić return przez addslashes(), jeśli potrzebujesz ucieczki w koniec.


title: Czy WordPress może wysłać maila do administratora o błędach PHP, ukrywając je na stronie?

text: Czy jest możliwe, aby WordPress wysyłał wiadomość e-mail do administratora witryny, gdy wyświetlany jest komunikat o błędzie PHP? W idealnym przypadku wiadomość zostałaby również odfiltrowana z danych wyjściowych HTML, aby uniknąć ujawnienia informacji. Pytam, ponieważ podczas gdy `@ini_set('display_errors', 0);` znajduje się na górze mojego `wp-config.php` i działa ładnie, chcę otrzymywać powiadomienia o błędach. Chętnie napiszę niestandardową wtyczkę, aby to zrobić, jeśli ktoś, kto wie więcej o WP, może wskazać mi kierunek, w którym mógłbym się podłączyć, aby wykonać zadanie. Ostatni bit: Czy jestem szalony, że chcę czegoś tak niezwykłego?


title: Wordpress jQuery nie jest zdefiniowany błąd

text: Cześć Właśnie nauczyłem się dodawać jQuery do motywów wordpress i działa, ale w narzędziu programistycznym wordpress pojawia się błąd. Oto kod, który opublikowałem: function register_js(){ if(!is_admin()){ wp_deregister_script(' jquery'); wp_register_script('jquery' , 'http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js'); wp_register_script('quicksand', get_template_directory_uri() . '/js/quicksand.js', 'jquery'); wp_register_script('easing', get_template_directory_uri() .'/js/easing.js', 'jquery'); wp_register_script('custom', get_template_directory_uri() . '/js/main.js', 'jquery', '1.0', TRUE); wp_register_script('ładneZdjęcie', get_template_directory_uri() . '/js/jquery.prettyPhoto.js', 'jquery'); wp_enqueue_script('jquery'); wp_enqueue_script('szybkie piaski'); wp_enqueue_script('ładneZdjęcie'); wp_enqueue_script('łagodzenie'); wp_enqueue_script('niestandardowy'); } } add_action('wp_enqueue_scripts', 'register_js'); Nie chodzi o to, że kiedyś otrzymywałem błąd $, a jQuery nie jest zdefiniowane. Aby rozwiązać problem $ w moim głównym pliku js, użyłem tego: jQuery(document).ready(function($) {}) Teraz jestem tylko otrzymywanie tych błędów: Błąd: ReferenceError: jQuery nie jest zdefiniowany Plik źródłowy: http://localhost/wordpress/wp-content/themes/01MyWork/js/quicksand.js Wiersz: 307 Błąd: ReferenceError: jQuery nie jest zdefiniowany Plik źródłowy: http://localhost/wordpress/wp-content/themes/01MyWork/js/easing.js Wiersz: 39 Błąd: Błąd referencyjny: jQuery nie jest zdefiniowane Plik źródłowy: http://localhost/wordpress/wp-content/themes/01MyWork /js/main.js Linia: 2 Skrypty wydają się działać, jedynym problemem jest to, że ten błąd jest generowany dla każdego skryptu, który ładuję. Jak mogę to rozwiązać?


title: Dodawanie pól formularza za pomocą interfejsu Settings API

text:
Tworzę wtyczkę ze stroną administracyjną, która korzysta z interfejsu Settings API. Mogę zrobić jedną sekcję i jedną opcję. Ale jak mogę dodać do niego inne pola formularza? Jeśli dodam tag wejściowy do funkcji zwrotnej, zostanie on dodany do tego samego pola. Czy to oznacza, że jeśli chcę dodać kolejne pole, to czy muszę utworzyć kolejną funkcję? Myślę, że to za dużo jak na zaoszczędzenie jednej wartości opcji. Więc tak nie może być. Czy możesz zmodyfikować tę przykładową wtyczkę, która jest bardzo prosta, aby dodać kolejną opcję formularza? Chciałbym też dodać kolejną sekcję. <?php /* Nazwa wtyczki: Ustawienia demo API Opis: Nauka pola ustawień i sekcji ustawień Autor: Teno */ add_action('admin_init', 'settingsapi_init'); function settingsapi_init(){ register_setting( 'settingsapi_optiongroupname', 'settingsapi_optionname'); add_settings_section('plugin_main', 'Sekcja 1', 'settingsapi_sectiondescription', 'settingsapi_pageslug'); add_settings_field('plugin_text_string', 'Opcja A', 'settingsapi_setting_string', 'settingsapi_pageslug', 'plugin_main'); add_settings_field('plugin_text_string', 'Opcja B', 'settingsapi_setting_string', 'settingsapi_pageslug', 'plugin_main'); } function settingsapi_sectiondescription() { echo '
To jest opis sekcji.
'; } function settingsapi_setting_string() { $options = get_option('settingsapi_optionname'); echo "<input id='plugin_text_string' name='settingsapi_optionname[option_a]' size='40' type='text' value='{$options['option_a']}' />"; // echo "<input id='plugin_text_string' name='settingsapi_optionname[option_b]' size='40' type='text' value='{$options['option_b']}' />"; // <-- to nie jest to, czego chcę. } // menu administratora add_action('admin_menu', 'plugin_admin_add_page'); function plugin_admin_add_page() { add_options_page('Niestandardowa strona wtyczki', 'Menu API ustawień demo', 'manage_options', 'settingsapi_pageslug', 'settingsapi_adminpage'); } function settingsapi_adminpage() { ?>

Wtyczka demonstracyjna do API ustawień
 <form action="options.php" method="post"> <?php settings_fields('settingsapi_optiongroupname '); ?> <?php do_settings_sections('settingsapi_pageslug'); ?> <?php submit_button(); ?> </form>
 <?php } ?>


title: niestandardowy post single.php wyświetlany dwa razy

text:
EDYCJA: Nadal mam ten problem, który doprowadza mnie do szału - czy ktoś może mi pomóc? Dziękuję! Mam niestandardowy pojedynczy-blog.php, który ma niestandardowy, ale podstawowy kanał. Oto kod:

Blog

Strona główna / Blog

 <?php if (have_posts()) : while (have_posts()) : the_post(); ?> <div <?php post_class() ?> id="post-<?php the_ID(); ?>">
<?php the_title(); ?>
 <?php include (ścieżka_szablonu . '/inc/meta.php' ); ?>
 <?php the_content(); ?> <?php wp_link_pages(array('before' => 'Strony: ', 'next_or_number' => 'number')); ?> <?php the_tags( 'Tagi: ', ', ', ''); ?>
 <?php edit_post_link('Edytuj ten wpis','','.'); ?>
 <?php endwhile; endif; ?>

 <?php get_sidebar(); ?>

 <?php get_footer(); ?> Z jakiegoś dziwnego powodu pokazuje dwa razy ten sam pojedynczy post? Ktoś wcześniej napotkał ten problem? Dzięki, Ben. To jest metakod:
 Wysłano: <?php the_time('F jS, Y') ?> przez <?php the_author () ?> <?php comments_popup_link('Brak komentarzy', '1 komentarz', '% komentarzy', 'link-komentarzy', ''); ?>


title: Jak nazywa się ten format (skróty zagnieżdżone)?

text:
Podczas korzystania z wtyczek i motywów komercyjnych w WordPressie często można spotkać kod taki: [one_half] [service_box]
Title:

blah...

 bla...

bla...

 [/service_box] [/one_half] [one_half_last] Coś bardziej nieistotnego tutaj [/one_half_last] Czy ta rzecz ma nazwę w Żargon WordPressa?


title: Filtr pre_get_post zwraca wyniki, gdy nie powinno ich być

text: Próbuję filtrować CPT według tablicy identyfikatorów postu przy użyciu filtra pre_get_post w mojej wtyczce. Wszystko działa dobrze, gdy są posty pasujące do identyfikatorów, ale gdy nie ma wpisów pasujących do identyfikatorów, otrzymuję w zamian wszystkie posty w ramach CPT, które próbuję filtrować. Potrzebuję identyfikatora, w którym nie znaleziono identyfikatorów postów (lub postów z identyfikatorów postów), to strona archiwum wyświetlająca normalne „nie znaleziono wyników”. To jest wyczerpanie mojego skryptu... add_action('pre_get_posts', array(__CLASS__, 'get_posts')); //uruchom wewnątrz funkcji klasy get_posts($wp_query) { if ($wp_query->is_main_query() && !is_admin() && is_post_type_archive(MbeEnrollments::MBE_POST_TYPE_NAME) && $wp_query->query_vars['list-view'] = 'list-view') { //Na potrzeby tego przykładu usunąłem skrypt w sekcji generującej identyfikatory postów CPT, które próbuję zwrócić. Ta porcja działa dobrze i zgodnie z oczekiwaniami. //jeśli zostaną znalezione identyfikatory postów if ($post_ids) { $wp_query->set('post__in', $post_ids); }                 zwrócić; } } Zakładam, że problem polega na tym, że strona archiwum CPT będzie działać normalnie, jeśli moja klauzula `if($post_ids)` zwróci false. Jednak staram się znaleźć sposób, aby wróciła bez rezultatów. Z góry dziękuję za wszelką pomoc. AKTUALIZACJA: Jeśli dołączę identyfikator posta, o którym wiem, że nie istnieje w CPT, otrzymuję żądane „Nie znaleziono wyników”. Mimo że to działa, wydaje się to trochę hackiem i musi być czystszy sposób. Jakieś pomysły? Oto jeśli to działa.... if ($post_ids) { $wp_query->set('post__in', $post_ids); }else{//jeśli nie ma identyfikatorów postów, przekaż fałszywy identyfikator posta, aby uzyskać 'brak wyników' $wp_query->set('post__in', array(0)); }                 zwrócić;


title: Rejestracja użytkownika na podstronie w konfiguracji wielostanowiskowej

text: Jako administrator sieci w konfiguracji wielostanowiskowej mam możliwość włączenia lub wyłączenia rejestracji użytkownika \ rejestracji strony. czy jest jakiś sposób, aby umożliwić rejestrację użytkownika na jednej podwitrynie, a nie na wszystkich witrynach. W mojej konfiguracji WP mam głównego bloga, który jest przeze mnie zarządzany i nie chcę, aby użytkownik się tutaj rejestrował. Mam innego bloga zainstalowanego w podkatalogu poświęconym forum. Chciałbym umożliwić tutaj rejestrację użytkownika, aby użytkownik mógł korzystać z forum


title: Dodać wyskakujące okienko do frontendu?

text: Chcę pokazać pole lub widżet z zawartością HTML na dole strony, aby pokazać czytelnikowi wiadomość, którą może odrzucić. Oto przykład: ![wpisz tutaj opis obrazu](http://i.stack.imgur.com/6Flmt.jpg) Czy można do tego użyć jednej z wbudowanych bibliotek JavaScript? Czy powinienem użyć widżetu, czy czegoś innego? W jaki sposób WordPress to zaimplementuje?


title: Zmodyfikuj tę pętlę, aby pasowała do mojego suwaka jQuery (slajdy)

text:
Próbuję zrobić suwak, który pobiera miniatury z określonego niestandardowego typu postu i wyświetla je dla każdego „slajdu”. Suwak i miniatury działają tak, jak powinny, ale nie jestem pewien, jak zmodyfikować pętlę, aby wyświetlała 4 posty w kontenerze, a następnie powtórzyć z kolejnymi 4 postami i tak dalej. Moja pętla wygląda tak:

 <?php $loop = new WP_Query(array('post_type' => 'fastighet', 'posts_per_page' => -1, 'zamówienie'=> 'ASC')); ?> <?php while ( $loop->have_posts() ): $loop->the_post(); ?>
 <?php $url = get_post_meta($post->ID, "url", prawda); if($url!='') { echo ''; echo the_post_thumbnail('admin-list-thumb'); echo ''; } else { echo the_post_thumbnail('admin-list-thumb'); } ?>

<?php the_title(); ?>

 <?php endwhile; ?> <?php wp_reset_query(); ?>
  poprzedni następny
  Każdy div z klasą slide staje się slajdem, jak widać. Ale jak mogę to zrobić, aby umieścić 4 posty na każdym takim slajdzie, a następnie 4 posty na innym slajdzie itp. Każda pomoc lub wskazówki będą naprawdę mile widziane!


title: Uruchamianie pętli z niestandardowym ciągiem zapytania na niestandardowym szablonie strony

text:
Zrobiłem niestandardową stronę z szablonem, który jest tylko pętlą z niestandardowym ciągiem zapytania dla listy postów z określonej kategorii, ale kiedy przeglądam stronę, pokazuje tylko jeden post z tytułem będącym tytułem strony. Nie rozumiem, dlaczego nie zwraca pętli postów. Co ja robię źle? Oto szablon strony. <?php /* Nazwa szablonu: teledyski */ ?>

 <?php global $query_string; query_posts($query_string .'&posts_per_page=10&cat=3&orderby=asc'); ?> <?php $i=0; while (have_posts()) : the_post(); $i++; ?>
 <a style="display:block;height:100%" href="<?php the_permalink() ?>" rel="zakładka" title="<?php _e( 'Stały link do', 'buddypress' ) ?> <?php the_title_attribute(); ?>"> <?php foreach((get_the_category()) as $category) { echo "
slug' style='margin- prawo:4px;pozycja:absolutne;prawo:0;wyświetlanie:blok' title='$category->cat_name'>
"; } ?>    <?php $video_code = tube_getcustomfield('video_code',get_the_ID() ); if($video_code) { ?> <img src="<?php $thumb = get_youtube_screen_link( $video_code, 'default' ) ?>" width="120" height="90" /> <?php } else { ? > <?php echo_first_image ($post->ID); ?> <?php } ?>

<?php the_title(); ?>

<?php echo time_ago(); ?><?php _e( 'in', 'buddypress' ) ?> <?php $category = get_the_category(); echo $kategoria[0]->nazwa_kota; ?>
 <?php if(function_exists('the_views')) { ?>
<?php the_views(); ?>
<?php } ?>

 <?php if($i%1==0) : ?>

<?php endif; ?> <?php koniec; wp_reset_query(); ?>


title: Usuń niestandardowe metaboksy z niestandardowego typu postu

text: Czy istnieje możliwość utworzenia niestandardowego typu postu w wordpressie, który będzie zawierał tylko domyślne metaboksy, a nie inne metaboxy dodane przez inne wtyczki. Pomysł polega na tym, aby użyć niestandardowego posta do opracowania wtyczki, ta wtyczka będzie musiała mieć wszystkie funkcje niestandardowego typu postu, ale ze wszystkimi metaboksami, które dodaje wtyczka, jak all-in-seo. Chcę stworzyć przejrzysty interfejs dla użytkownika, a te dodatkowe metaboksy przeszkadzają :-)


title: Pobieranie wartości niestandardowej tablicy pól za pomocą zapytania db

text: Próbuję wysłać zapytanie do bazy danych o posty oparte na wielu polach niestandardowych. Jest to dość łatwe z poniższym kodem, jeśli wartości są proste: $querydetails = " SELECT wposts.* FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta WHERE wposts.ID = wpostmeta.post_id AND wpostmeta.meta_key = 'pole ' AND wpostmeta.meta_value = 'wartość' AND wposts.post_status = 'opublikuj' "; Ale jak mogę zapytać o wartość, która jest przechowywana w formie tablicy, na przykład a:1:{i:0;s:8:"value";} ?


title: Jak umieścić captcha tuż pod obszarem tekstu komentarzy?

text: Cześć, jestem nowy w prasie słów. Pobrałem bot wykryć captcha. Działa bez zarzutu. Jedynym problemem jest to, że captcha pojawia się nad obszarem tekstu komentarzy. Potrzebuję, aby pojawił się tuż pod obszarem tekstowym komentarzy i tuż nad przyciskiem komentarza do posta. Jak mogę to zrobić? Proszę pomóż mi..


title: Wyświetlanie nazwy/linku podkategorii zamiast kategorii nadrzędnej

text: w tej chwili ten kod pokazuje podkategorie artykułu, jeśli taki ma. Ale pokazuje również kategorię nadrzędną (więc zarówno kategoria nadrzędna, jak i kategoria podrzędna są wyświetlane jednocześnie). Czy istnieje sposób na zmodyfikowanie tego kodu, aby jeśli artykuł znajduje się w podkategorii, wyświetlał tylko te podkategorie i ukrywał kategorię nadrzędną? A jeśli jest tylko w kategorii nadrzędnej, to pokazuje kategorię nadrzędną? Dziękuję Ci! <?php $separator_kategorii = ""; foreach((get_the_category()) as $childcat) { $parentcat = $childcat->term_id; if( $parentcat != 0 ) echo '' .get_cat_name($parentcat) . ''; w przeciwnym razie echo '' . $category_separator . 'cat_name .'">' . $childcat->cat_name . ''; $category_separator = " / "; } ?>


title: Jak uzyskać konkretną meta postu według tytułu lub identyfikatora?

text: Zarejestrowałem się poniżej niestandardowego typu posta w function.php i używam `Advanced Custom Fields`. Używając zaawansowanego typu pola niestandardowego dodałem jedno pole „obraz” i przypisałem do mojego niestandardowego typu posta „Wydanie”. Teraz dodałem jeden post wewnątrz typu postu Release. Te dane wypełniłem w tym poście. **Tytuł:** Mów teraz (edycja Deluxe) **Obraz:** Dodano obrazek Teraz Chcę pobrać metadane z określonym postem według tytułu/identyfikatora. Próbowałem tego kodu, ale nie działa: $my_post_meta = get_post_meta(556, 'album_image', true); if ( ! pusty ( $my_post_meta ) ) { get_field('album_image'); } **Mój niestandardowy typ wpisu:** /** * Muzyka/Wydania * */ function codex_custom_init5() { $labels = array( 'name' => 'Wersje', 'singular_name' => 'Wydanie', 'add_new ' => 'Dodaj nową', 'add_new_item' => 'Dodaj nową wersję', 'edit_item' => 'Edytuj wydanie', 'new_item' => 'Nowa wersja', 'all_items' => 'Wszystkie wersje', ' view_item' => 'Wyświetl wydanie', 'search_items' => 'Wyszukaj wydania', 'not_found' => 'Nie znaleziono wydania', 'not_found_in_trash' => 'Nie znaleziono wydania w Koszu', 'parent_item_colon' => '' , 'menu_name' => 'Zwolnij' ); $args = array( 'labels' => $labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'show_in_menu' => true, 'query_var' => true, 'rewrite ' => array( 'slug' => 'release' ), 'capability_type' => 'post', 'has_archive' => true, 'hierarchical' => false, 'menu_position' => null, 'supports' => array( 'tytuł', 'redaktor', 'autor', 'miniaturka', 'wyciąg', 'komentarze' ) ); register_post_type( 'wydanie', $args ); } add_action( 'init', 'codex_custom_init5' ); ![Mój typ posta](http://i.stack.imgur.com/t093l.jpg)


title: Jak sprawić, by elementy motywu były konfigurowalne w wordpressie?

text: W Wordpress jest opcja menu o nazwie „Wyglądy”. Chcę tam dodać (np.) podmenu 'nagłówek', a następnie móc dostosować nagłówek z poziomu wordpress (strona administracyjna). Z tego, co zrozumiałem, muszę mieć plik 'functions.php' w moim folderze z motywem. W pliku 'functions.php' piszę coś takiego: <?php add_submenu_page( $parent_slug, $page_title, $menu_title, $capability, $menu_slug, $function); ?> Oczywiście z dostosowanymi argumentami (nie jestem do końca pewien, jakie powinny być, ponieważ czuję się w tym wszystkim zagubiony).


title: Wordpress Multisite umożliwia administratorowi witryny dodawanie użytkownika bez potwierdzenia e-mailem

text: W Wordpress Multisite administrator witryny (nie superadministrator) nie ma opcji „Dodaj użytkownika bez wysyłania wiadomości e-mail z potwierdzeniem” podczas dodawania nowego użytkownika. Czy istnieje sposób na ominięcie e-maila z potwierdzeniem lub dodanie tej opcji również dla administratora witryny? Wielkie dzięki


title: Skopiuj i wklej hasło do komentarzy

text: Jeden z moich nowszych klientów ma obszerny blog WordPress (na SE jestem człowiekiem Joomla) i jestem pewien, że musi być za tym jakiś powód. **W przypadku komentarzy prosi o skopiowanie hasła - a następnie wklejenie go!** Nie mogę stwierdzić, czy jest to funkcja WordPressa, która jest niewłaściwie używana (oczywiście nie ma być) czy też nieuczciwy projektant stron internetowych, który po prostu stworzył coś bardzo dziwnego. Chociaż klient jest dość dobrze zorientowany, nie ma na to innego wytłumaczenia niż „nie wiem”. ![tutaj podaj opis obrazu](http://i.stack.imgur.com/HiMQC.jpg) Edytuj: Czy to niewiarygodnie słabo przemyślana alternatywa Capatcha?


title: Czy ten hak naprawdę jest przestarzały? ( manage_{$taxonomy}_custom_column )

text: Dodałem dane do kolumn dwóch taksonomii w motywie, nad którym pracuję. Uderzyłem jednak w coś, co mnie zdezorientowało. Używam tego haka `manage_{$taxonomy}_custom_column`, ale strona Adama Browna w haczyku mówi, że nie jest już używany. Podczas korzystania z hooka nie otrzymuję błędów, więc czy to może być prawda? Nie mogę też znaleźć zastępcy. Jak mogę sprawdzić, czy mój hak lub jakikolwiek inny hak jest przestarzały?


title: Jak mogę zmodyfikować pętlę z wtyczki bez usuwania innych filtrów?

text: Próbuję zmodyfikować wyjście `the_loop` z wtyczki. Zajrzałem do `pre_get_posts`, które zdecydowanie działa, ale muszę przefiltrować pętlę według niestandardowej taksonomii. Mogę to zrobić za pomocą `$query->set('tax_query',$my_tax_new_query)`, ale problem polega na tym, że zastępuje to wszelkie poprzednie zapytania taksonomiczne, które mogły zostać ustawione. Stosuje moje zapytanie **ZAMIAST** poprzedniego zapytania zamiast **W DODATKOWYM TO**. Jak mogę zastosować dodatkowy filtr taksonomii do pętli bez wymazywania poprzedniego zapytania? EDYCJA: Na przykład: function myplugin_filter_the_loop($query) { $taxonomy = 'hobby'; $exclude_terms = array('jazda na rowerze','pływanie','jazda konna'); $query->set('tax_query',$exclude_terms) } add_filter('pre_get_posts','myplugin_filter_the_loop'); To działa, ale ZASTĄPI wszystkie wcześniej zdefiniowane `tax_query` w pętli. EDIT2: Alternatywa przy użyciu `posts_where`: function myplugin_filter_the_loop($where) { $relationship_ids = array(97,98,99); foreach ( $relationship_ids as $id ): $where .= " AND ( wp_posts.ID NOT IN ( SELECT object_id FROM wp_term_relationships WHERE term_taxonomy_id IN ($id)" endforeach; } add_filter('posts_where','myplugin_loopfilter_);the do pracy, musiałbym tylko uzyskać odpowiedni identyfikator relacji przez term_id lub slug itp.


title: Wp-login pojawia się biały ekran, błąd: nie można zmodyfikować informacji nagłówka

text: Prawdopodobnie duplikat wielu pytań, z powodu, dla którego tu publikuję, żadne z nich nie pomaga, oto log, który pojawia się na stronie Wp-login.php. Uwaga: automatic_feed_links jest przestarzałe od wersji 3.0! Zamiast tego użyj add_theme_support( 'automatic-feed-links' ). w /home/truckgua/public_html/test2/wp-includes/functions.php w wierszu 2871 Uwaga: wp_deregister_script został wywołany niepoprawnie. Skrypty i style nie powinny być rejestrowane ani umieszczane w kolejce do momentu przechwycenia wp_enqueue_scripts, admin_enqueue_scripts lub login_enqueue_scripts. Zobacz Debugowanie w WordPressie, aby uzyskać więcej informacji. (Ta wiadomość została dodana w wersji 3.3.) w /home/truckgua/public_html/test2/wp-includes/functions.php w wierszu 3012 Ostrzeżenie: Nie można modyfikować informacji nagłówka - nagłówki już wysłane przez (wyjście rozpoczęte w /home/truckgua/ public_html/test2/wp-includes/functions.php:2871) w /home/truckgua/public_html/test2/wp-login.php w linii 384 Ostrzeżenie: Nie można modyfikować informacji nagłówka - nagłówki już wysłane przez (wyjście rozpoczęte w /home/ truckgua/public_html/test2/wp-includes/functions.php:2871) w /home/truckgua/public_html/test2/wp-login.php w wierszu 396 Ostrzeżenie: Nie można modyfikować informacji nagłówka - nagłówki już wysłane przez (wyjście rozpoczęte o / home/truckgua/public_html/test2/wp-includes/functions.php:2871) w /home/truckgua/public_html/test2/wp-includes/pluggable.php w wierszu 678 Ostrzeżenie: Nie można modyfikować informacji nagłówka - nagłówki już wysłane przez ( wyjście rozpoczęte w /home/truckgua/public_html/test2/wp-includes/functions.php:2871) w /home/truckgua/public_html/test2/wp-inclu des/pluggable.php w wierszu 679 Ostrzeżenie: Nie można modyfikować informacji nagłówka - nagłówki już wysłane przez (wyjście rozpoczęte w /home/truckgua/public_html/test2/wp-includes/functions.php:2871) w /home/truckgua/public_html/ test2/wp-includes/pluggable.php w wierszu 680 Ostrzeżenie: Nie można modyfikować informacji nagłówka - nagłówki już wysłane przez (wyjście rozpoczęte w /home/truckgua/public_html/test2/wp-includes/functions.php:2871) w /home/ truckgua/public_html/test2/wp-includes/pluggable.php on line 875 **Otrzymuję to samo w wersji WP 3.6 i WP w wersji 3.7.1** Teraz Oto, co już zrobiłem, aby to działało: 1. Wyłączanie wtyczki z FTP 2. Przełączanie motywu poprzez zmianę nazwy wybranego folderu motywu 3. Sprawdzanie spacji po i przed 4. Zastępowanie plików WP świeżym pobraniem ** Jeszcze jedna rzecz to ta strona internetowa opracowana na Windows Server, a teraz Moving na Linux Server. **


title: Wyłączone wtyczki to luki w zabezpieczeniach - plotka czy rzeczywistość?

text: Przeczytałem wiele artykułów na blogu poświęconym bezpieczeństwu WordPressa, w których eksperci ds. bezpieczeństwa zalecają pewne specjalne sprawy, które należy wziąć pod uwagę, gdy ktoś obawia się o bezpieczeństwo swojej witryny WordPress. Wśród nich są: Porady dotyczące bezpieczeństwa WordPress: **Usuń niepotrzebne wtyczki, które nie są używane** Wtyczka, która ma luki w zabezpieczeniach, czy to w kodzie, strukturach lub połączeniach z bazą danych, może być fatalna dla witryny, nawet jeśli jest aktywowana w witrynie - z drugiej strony, dobrze skonstruowana, dobrze zakodowana, bezpiecznie podłączona do bazy danych wtyczka może nie mieć luki w zabezpieczeniach, nawet jeśli jest dezaktywowana. Więc gdzie dokładnie jest problem? Mam stronę, na której jest kilka wtyczek, używam ich okazjonalnie. Właściwie nie chcę ich usuwać, ale kiedy nie są potrzebne, po prostu dezaktywuję je na stronie. Czy muszę je usunąć, aby zabezpieczyć swoją witrynę? **...CZEMU?**


title: Uzyskaj wszystkie niestandardowe typy postów z wyjątkiem niektórych...

text: Stosuję już od kilku godzin i jestem pewien, że nie jest to takie skomplikowane. Chciałbym umieścić wszystkie niestandardowe typy postów w $posts = query_posts( $query_string.'post_type=POST-TYPE1,POST-TYPE2,POST-TYPE3&post_status=publish&posts_per_page=-1&' ); Wiem, że jest taka funkcja: `$post_types=get_post_types('','names');` I mam kilka typów postów, które chcę wykluczyć. Np. "Teczka". Więc jak to jest możliwe, aby `$posts` szukał wszystkich ważnych typów?! Wielkie dzięki !! Filip


title: Niestandardowe przekierowanie szablonu na podstawie zmiennych adresów URL

text: Używam niestandardowego adresu URL w moim menu, aby wyświetlić najczęściej oglądane posty, przekazując zmienne do adresu URL jako http://website.com/?v_sortby=views&v_orderby=desc Jednak chcę użyć niestandardowego szablonu do wyświetlania wyników. Próbowałem następujących, ale to działa. Mam problem ze znalezieniem rozwiązania, czy ktoś może pomóc. funkcja custom_template($szablon) { global $wp; if ($wp->query_vars['template']=='basic') { return dirname(__FILE__) . '/podstawowy.php'; } else { return $szablon; } } add_filter('template_redirect', 'custom_template');


title: Jak sprawdzić aktualny adres URL punktu końcowego w pliku szablonu?

text: Jaki jest najlepszy sposób sprawdzenia bieżącego adresu URL punktu końcowego w pliku szablonu? Mam wtyczkę, która tworzy punkty końcowe w **author.php**... więc teraz próbuję sprawdzić w **author.php**, aby tylko określony kod był wykonywany, jeśli adres URL kończy się w określonym punkcie końcowym? `example.com/autor/username/endpointA` `example.com/autor/username/endpointB` Pomysł polega na tym, że każdy punkt końcowy ma inną zawartość. Dziękuję Ci!


title: Dziwne symbole w Chrome (wordpress)

text: Zmieniłem kilka linijek kodu php i jquery i stało się to w mojej witrynie wordpress: Image Najdziwniejsze jest to, że zmieniłem wszystko z powrotem i nadal tak się dzieje, a jeśli przeglądasz witrynę w firefox, będzie idealnie. Nie mam pojęcia, co jest nie tak. Nie instalowałem żadnych nowych wtyczek.


title: Uzyskaj link do kanału określonego typu posta ORAZ taksonomii

text: Jestem w stanie uzyskać określony typ posta za pomocą `http://www.mywebsite.com/feed/?post_type=post-slug&topic=accountable-care- Organizations`, ale kiedy próbuję `http://www.mywebsite. com/feed/?post_type=post-slug&topic=term-slug` (temat to slug taksonomii), wyniki nie ulegają zmianie. Czy można wygenerować plik danych z wieloma parametrami, takimi jak ten?


title: jak oddzielić tablicę przecinkami?

text: Powiedzmy, że mam taką tablicę: Array ( [0] => 13 [1] => 7 ) A ta tablica to na przykład "print by `<?php print_r($_categories); ?>` ale teraz, jak to zrobić zrobić implodować tablicę do tego formatu: 13,7 (bez przecinka po ostatniej wartości) Dzięki, nelson


title: Funkcja przepisywania adresu URL i paginacja z rokiem w adresie URL

text: **AKTUALIZACJA** Nigdy więcej błędów 404. Częścią problemu było to, że używałem zastrzeżonej zmiennej (rok, doh!), więc zmieniłem kilka rzeczy i mam to prawie w pełni działające. Od ostatniego komentarza zrobiłem bardzo duży postęp. Zmieniłem sposób wysyłania roku do strony. Teraz moje adresy URL w menu używają ciągu zapytania i wyglądają tak: > domain.com/our-company/newsroom/?articleyear=2014 A jeśli użyję paginacji na dole strony z wiadomościami, adresy URL wyglądają tak : > domena.com/nasza-firma/newsroom/page/2/?articleyear=2013 Chciałbym zmienić strukturę adresu URL na coś bardziej podobnego do tego: > domena.com/nasza-firma/newsroom/2013/page/2 / LUB > domain.com/our-company/newsroom/articleyear/2013/page/2/ W zależności od tego, co jest najbardziej sensowne w oparciu o strukturę mojego adresu URL. Czy istnieje reguła przepisywania, której mogę użyć, aby Wordpress zrozumiał kolejność, w jakiej mają się pojawiać liczby, i aby rok artykułu pojawił się zaraz po /newsroom/ i paginacja pojawiła się na samym końcu? Nie napisałem zbyt wielu rewrite_rules, więc mała pomoc z tym byłaby bardzo pomocna. Czy myślę o tym we właściwy sposób?


title: Wordpress sprawdza, czy użytkownik jest zalogowany ze strony innej niż wordpress

text: Używam wordpress i zwykle używam: if (!is_user_logged_in()){ //coś tutaj }, aby wykryć, czy użytkownik wordpress jest zalogowany, czy teraz. Mój problem polega na tym, że muszę wykryć, czy użytkownik jest zalogowany do wordpress ze strony innej niż wordpress. Moja strona znajduje się w tym samym katalogu, co inne strony wordpress, ale nie jest stroną wordpress. Jak mogę to wykryć na mojej stronie?


title: Pokaż strony archiwum autora dla autorów bez postów

text: Mam jedną stronę dla każdego autora, ale jeśli autor nie ma żadnych postów, nie mogę uzyskać jego zmiennych, ponieważ pętla jest pusta. Strona zwraca się pusta, bez awatara, bez informacji i innych rzeczy, cała witryna jest pusta. Jak sprawić, by WordPress wyciągnął zmienną autora, jeśli nie ma żadnych postów (co sprawia, że nie ma autora, ale jestem na stronie autorów)..? Używam dwadzieścia jedenaście jako motyw nadrzędny.


title: Uruchom funkcję w określonym czasie

text: Mam funkcję WordPress, którą chcę uruchomić raz dziennie o określonej godzinie. Jak mam to zrobić, skoro WP cron nie może być ustawiony na konkretną godzinę?


title: Jak przenieść podstawowe pliki js do stopki?

text: podczas testowania szybkości strony znalazłem 2 pliki js, które powodują opóźnienie szybkości, według PageSpeed Insight. nazwy plików to 1. /wp-includes/js/swfobject.js 2. /wp-includes/js/comment-reply.min.js jak mogę przenieść te pliki do stopki, obecnie oba pliki ładują się w nagłówku.


title: Uzyskaj podkategorie i posty z tej samej kategorii nadrzędnej

text: Chcę pobrać wszystkie posty w kategorii 1, następnie pobrać wszystkie podkategorie w kategorii 1, a następnie scalić wyniki w jedną tablicę. Czy to jest możliwe?


title: bp_has_members z niestandardowymi polami

text: Chcę zapętlić członków, w których niestandardowe pola profilu mają warunek, pozwól mi wyjaśnić, mam szerokość i długość geograficzną jako niestandardowe pola na stronie buddypress członków i muszę zapętlić tylko członków, którzy ustawili szerokość i długość geograficzną, używając bp_has_member if ( bp_has_members ( 'na_stronę=0' )) : ?> endif; Próbowałem z ( "Dirección" to mój niestandardowy profil x, którego używam do filtrowania członka bez adresu ), ale to nie działa lub coś jest nie tak. bp_has_members( 'per_page=0&meta_key=Kierunek&meta_value!=\'\'' ) Próbowałem na wiele sposobów bez rezultatu


title: Błąd 404 - Wordpress dodaje moją nazwę domeny na końcu adresu URL

text: Naprawdę mam nadzieję, że ktoś może mi pomóc z tymi błędami 404. Adresy URL z błędami 404 pokazują nazwę domeny mojej witryny na końcu w następujący sposób: `http://www.msfullhair.com/hair-growth-products/msfullhair.com` `http://www.msfullhair.com/ category/msfullhair.com` Czy ktoś wie, jak mogę rozwiązać ten problem?


title: Jak radzić sobie z wieloma opcjami wyboru za pomocą opcji motywu register_setting()?

text: Używam przykładowych opcji motywu Iana Stewarta dla lekkiego panelu opcji motywu. ### INSERTION FAILED Muszę wstawić wiele kategorii do db, gdzie użyłem następującego kodu: <select multiple="multiple" name="site_options[categorychoice]"> <?php $args = array( 'orderby' => 'nazwa', 'rodzic' => 0, 'wyklucz' => 1 ); $categories = get_categories( $args ); foreach ($categories as $category) { ?> <option value="<?php echo $category->term_id; ?>" style="padding-right: 10px;" <?php wybrane( $site_options['categorychoice'], $category->term_id ); ?> ><?php echo $kategoria->nazwa_kota . ' (' . $kategoria->liczba_kategorii .')'; ?></option> <?php } ?> </select> W części kodu dotyczącej walidacji: function theme_options_validate( $input ) { $got_categories = array( $input['categorychoice'] ); } Wstawia dane do tabeli Opcje, ale nie wiele, wstawia tylko ostatnią selekcję. Otrzymałem więc: `'categorychoice' => string '5' (length=1)` -- tylko jedna wartość spośród wszystkich, i to jest ostatni cat_id wśród wybranych. ### SELECTED=SELECTED FAILED Również nie udaje mi się wybrać wartości, gdy pasuje ona do danych z bazą danych. Wypróbowałem mój kod z rozwiązaniem This WPSE, ale nie powiodło się: foreach ($categories as $category) { ?> <?php $selected = in_array( $category->cat_ID, $selected ) ? ' selected="wybrane" ' : '' ?> <wartość opcji="<?php echo $kategoria->identyfikator_terminu; ?>" style="padding-right: 10px;" <?php echo $wybrane; ?> ><?php echo $kategoria->nazwa_kota . ' (' . $kategoria->liczba_kategorii .')'; ?></option> <?php } ?>


title: Gravity niestandardowe znaczniki scalania

text: Stworzyłem kilka niestandardowych pól profilu zgodnie z radą Thomasa Griffina i Stephanie Leary. Tak: function change_contactmethod( $contactmethods ) { // Dodaj kilka pól $contactmethods['twitter'] = 'Twitter Name (no @)'; $contactmethods['phone'] = 'Numer telefonu'; $contactmethods['title'] = 'Tytuł'; // Usuń AIM, Yahoo IM, Google Talk/Jabber unset($contactmethods['aim']); unset($contactmethods['yim']); unset($contactmethods['jabber']); // zrób to! return $contactmethods; } add_filter('user_contactmethods','change_contactmethod',10,1); Chcę utworzyć niestandardowy znacznik scalania dla Gravity Forms, który będzie wyprowadzany według numeru telefonu użytkownika (`$contactmethods['phone']`). Mogę pobrać te informacje na dwa różne sposoby: Sposób 1: function phone() { $userid = get_current_user_id(); $user_info = get_userdata($userid); return get_user_meta($userid, 'telefon', prawda); } lub Way 2: function phone() { echo the_author_meta('phone', $current_author->ID); } Mogę nawet stworzyć shortcode `[phone]` dodając: add_shortcode('phone', 'phone'); Kiedy próbuję dodać mój shortcode `[phone]` jako domyślną wartość wejściową w Gravity Forms, krótki kod nie jest przetwarzany. Gravity ma te rzeczy zwane krótkimi tagami, które z dokumentacji Gravity pomyślałem, że `{user:[meta_key]}` może działać jako `{user:phone}`, ale nie ustawiłem jeszcze tego jako znacznika scalającego. Nie jestem zbyt zaznajomiony z JavaScriptem i to, co robię, aby skonfigurować ten tag scalający, nie działa: add_action("gform_admin_pre_render", "add_merge_tags"); funkcja add_merge_tags($form){ $mergeTags["telefon"] = the_author_meta('telefon', $current_author->ID); ?> <script type="text/javascript"> gform.addFilter("gform_merge_tags", "add_merge_tags"); function add_merge_tags(mergeTags, elementId, hideAllFields, excludeFieldTypes, isPrepop, option){ mergeTags["telefon"].tags.push({ tag: '{telefon}', label: 'Telefon' }); zwróć scalające tagi; } </script> <?php //zwróć obiekt formularza z haka php return $form; } Jak utworzyć niestandardowy tag scalania dla dodanego niestandardowego pola meta? Lub jak zezwolić na odczytanie przez moje pola wejściowe krótkiego kodu „[telefon]”?


title: Włączenie pliku php w katalogu nad instalacją WordPressa

text: Mam problem z dołączeniem zewnętrznego pliku .php do mojego motywu WordPress. **Adres URL instalacji WordPress:** mojanazwa_domeny.com/blog **URL pliku PHP:** moja_nazwa_domeny.com/testing/assets/inc/analytics.php Motyw WordPress. Mój wiersz kodu wygląda tak: <?php include ( site_url() . '/testing/assets/inc/analytics.php' ); ?> Próbowałem też różnych odmian `PATH` i `ABSPATH`, ale nie mogę zmusić ich do działania. Co ciekawe, kiedy zmieniam `include` na `require_once` to psuje stronę. Proszę, pomóż mi dowiedzieć się, co dokładnie robię źle. Dziękuję Ci!


title: Problem z add_rewrite_rule i paginacją (paged i page query_vars)

text: Mam niestandardową taksonomię o nazwie `location` i chcę dodać sekcje takie jak 'news' i 'marketplace' dla każdego terminu, więc mój adres URL wygląda jak `/location/montreal/news/` Działa idealnie, dopóki nie spróbuję dodać paginacji . Oto mój kod: add_action( 'init', 'region_rewrite' ); function region_rewrite() { global $wp; $wp->add_query_var( 'sekcja' ); add_rewrite_rule( '^lokalizacja/([^/]*)/([^/]*)/page/([0-9]+)/?', 'index.php?location=$matches[1]&section= $matches[2]&paged=$matches[3]', 'top' ); add_rewrite_rule( '^lokalizacja/([^/]*)/([^/]*)/?', 'index.php?location=$matches[1]&section=$matches[2]', 'top' ) ; } Korzystam z wtyczki analizatora Rewrite i wygląda na to, że lokalizacja, sekcja i paged query_vars mają przypisaną odpowiednią wartość. Jednak otrzymuję błąd 404 podczas próby uzyskania dostępu do adresu URL strony, takiego jak `/location/montreal/news/page/2`. Zauważyłem też, że zmienna `page` ma wartość `/2`. Czy to możliwe, że właśnie dlatego otrzymuję błąd 404, którego nie znaleziono? Każda pomoc byłaby bardzo mile widziana!


title: Gravity Forms Zaktualizuj meta posta z szablonu

text: Utworzyłem formularz o nazwie „Książki”, który zawiera pola: * Tytuł (tytuł posta) * Autor * Gatunek (rozwijane — fantasy, horror, dramat... itp.) * Numer ISBN * Status (rozwijane — opcja domyślna — opublikowane, dodatkowe opcja - Promowane) Ten formularz tworzy i wypełnia niestandardowy typ postu o nazwie książki, który ma niestandardowe pola meta: * Autor * Gatunek * Numer ISBN * Status * Promotor Mam drugi formularz o nazwie „Promotor”, który pojawia się w moim Plik szablonu books.php w moim motywie wordpress. Formularz pojawia się na dole strony, jeśli status to „Opublikowany” z pojedynczym polem tekstowym, w którym osoba może wpisać swoje imię i nazwisko w celu uzyskania pomocy i zmienić status z opublikowanego na promowany. Spędziłem dużo czasu na forach grawitacyjnych szukając odpowiedzi i wymyśliłem: add_action("gform_post_submission_5", "books_promoter", 10, 4); function books_promoter($entry, $form) { global $post; globalne $wp_query; $post_id = get_the_ID(); // $entry['post_id']; $post_data['status'] = get_post_meta($postID,'status', prawda); $post_data['promotor'] = get_post_meta($postID,'promotor', prawda); $status = $wpis['5']; $promotor = $entry['6']; update_post_meta($post_id, 'books_status', $status ); update_post_meta($post_id, 'books_promoter', $promoter ); } Ta funkcja pobiera identyfikator posta i puste pole meta postu, a następnie aktualizuje meta posta. Z jakiegoś powodu to jednak nie działa. Myślę, że może to być z $post_id wewnątrz pętli pliku szablonu, ale zastanawiałem się, czy ktoś ma jakieś opinie na temat lepszego sposobu na zrobienie tego.


title: Pułapki podczas dystrybucji wtyczek, które uzyskują dostęp do usług internetowych SOAP?

text: Zastanawiam się **jakie pułapki** _(jeśli w ogóle?)_ natknęli się tutaj programiści **podczas dystrybucji wtyczek WordPress** za pośrednictwem repozytorium wtyczek WordPress **w których osadzony jest klient SOAP** w celu uzyskania dostępu do usług internetowych SOAP dla krytyczne funkcje wtyczek _(lub dowolna wtyczka rozpowszechniana szeroko za pośrednictwem dowolnego innego repozytorium, jeśli o to chodzi.)_ _(Zakładam, że firma publikująca wtyczki byłaby znacznie lepsza, gdyby rozwijała usługi sieciowe RESTful, ale chcę potwierdzić tę opinię przez badanie opinii innych tutaj. Zauważ, że zadałem naszemu własnemu @EAMann podobne pytanie na Namesake.com.)_ Robię to wiki społeczności, abyśmy mogli uchwycić wszystkie myśli na ten temat.


title: Zastosuj tag do każdego obrazu „Link Rel”

text: Budowanie mojej pierwszej strony. Uruchamianie wersji 3.1.1 z motywem Boldy z Site5. Boldy korzysta z prettyPhoto Lightbox. Jeśli zapoznasz się z instrukcjami dotyczącymi konfigurowania Boldy (na dole strony) > Aby dodać zachowanie Lightbox do linku, po prostu dodaj rel="prettyPhoto" do > obrazu Link Rel ![wprowadź opis obrazu > tutaj](http://i .stack.imgur.com/QP3fJ.png) Właśnie zaimportowałem około 100 wpisów na blogu z Wordpress.com. 2 pytania (chociaż bardzo powiązane: 1. Jak wsadowo zaktualizować wszystkie poprzednie zdjęcia, aby domyślnie wczytywały się z prettyPhoto, czyli dodać tag 'prettyphoto' do każdego zdjęcia rel. 2. Mam około 15 autorów na bloga. Wiem, że zapomni ręcznie ustawić ten tag prettyPhoto = Czy istnieje sposób, aby ustawić go jako domyślny?


title: Jaka jest najbardziej wydajna metoda ładowania widżetów w functions.php?

text: Widziałem, jak programiści WordPressa używają dwóch różnych metod ładowania niestandardowych widżetów z pliku functions.php. Pierwszy: include("functions/my-custom-widget.php"); Drugi: require_once(dirname(__FILE__) . "/functions/my-custom-widget.php"); Która z tych metod jest bardziej wydajna. Szczególnie interesuje mnie wydajność, jeśli w ogóle jest różnica. Czy require_once postępuje zgodnie z lepszymi „najlepszymi praktykami”? Jestem pewien, że istnieje wiele innych sposobów na zrobienie tego. Jeśli ktoś ma lepszą rekomendację, chciałbym ją usłyszeć. Dziękuję.