title: Funkcjonalność kontrolera - jeśli użytkownik nie jest zalogowany wyślij go na konkretną stronę (nie wp_login)

text: Brzmi to bardzo prosto, ale po prostu nie mogę tego rozgryźć. Chcę mieć następującą funkcjonalność: _Jeżeli użytkownik nie jest zalogowany i próbuje uzyskać dostęp w dowolnym miejscu witryny (włącznie ze stroną główną) - wyślij go na konkretną stronę._ Spróbowałem, dodając następujący komunikat, ale otrzymałem komunikat „nieprawidłowe przekierowanie” : if (!is_user_logged_in() ) { wp_redirect ('/public' ); Wyjście; } Myślę, że jeśli mogę dodać klauzulę do instrukcji if, mówiącą, że strona, do której wchodzę, nie jest stroną publiczną, ale nie jestem do końca pewien, jak to zrobić. Wszelkie wtyczki, które tam widzę, przekierowują do ekranu logowania wordpress. Każda pomoc jest bardzo ceniona! Dzięki, MG


title: Jak sprawić, by permalink działał dla niestandardowych typów postów i taksonomii?

text: Spędziłem dni, próbując to rozgryźć, StackOverflow to moja ostatnia deska ratunku. Wszystko, czego chcę, to: http://www.moja_domena.com/mój-post-stype/kategoria-najwyzszego-poziomu/moja-pod-poziom-kategoria/moja-strona.html W przypadku postów jest to szalenie łatwe , wystarczy dodać /%category%/%postname%.html jako link bezpośredni. Jednak w przypadku niestandardowego typu postu wydaje się to szalenie trudne. Mam zarejestrowany **projekt** post_type. I taksonomia **project_category** Teraz lubię, gdy moje permalinki wyświetlają się jako /project - Przegląd projektów we wszystkich kategoriach. /project/CATEGORY — Przegląd projektów w tej kategorii. /project/CATEGORY/SUBCATEGORY — przegląd projektów z tej podkategorii. /project/CATEGORY/SUBCATEGORY/postname — Rzeczywisty post. Prawdopodobnie wp_rewrite musi mi tu pomóc, chociaż nie mam pojęcia, jak. Czy ktoś może mi pomóc?


title: Najczystszy sposób na kodowanie „Niestandardowych paneli zapisu/metaboxów”?

text: Jak z wszystkim w Wordpress, wydaje się, że istnieje 20 sposobów na zrobienie czegoś, ale po kilku tygodniach intensywnych poszukiwań naprawdę nie znalazłem więcej niż kilku samouczków, które naprawdę odzwierciedlają się nawzajem w konwencjach pisania, co zawsze sprawia, że jestem trochę niespokojny kiedy to jest sposób, w jaki się uczę, więc chciałem napisać post i zapytać was, społeczność, co myślicie?.... Nawet jeśli macie tylko ulubiony zasób, taki jak samouczek w sieci, byłoby to bardzo użyteczne. Czuję, że przeczesywałem je wszystkie, ale często wydaje się, że pytanie określonej grupy doświadczonych ludzi zazwyczaj daje lepsze wyniki, więc oto jestem. *PS - Próbowałem klasy DeluxeBlogs i działało dobrze, ale w tej chwili naprawdę próbuję nauczyć się najbardziej "poprawnego" sposobu pisania własnych metaboxów od zera. Dzięki, SB ----- **EDYTUJ 1 : Przykład jednego z moich obecnych metapól** ----- <?php // Zarejestruj niestandardowe pola typu postu -- Opis Pole add_action( 'add_meta_boxes', ' store_description_meta_box_add' ); function store_description_meta_box_add() { add_meta_box( 'epr_store_description_meta_id', 'Opis produktu', 'store_description_meta_box_cb', 'epr_store', 'normalny', 'high' ); } function store_description_meta_box_cb( $post ) { $values = get_post_custom( $post->ID ); $textbox = isset( $values['meta_box_description_text']) ? esc_attr( $wartości['meta_box_description_text'][0] ) : ''; wp_nonce_field( 'my_meta_box_nonce', 'meta_box_nonce' ); ?> <textarea name="meta_box_description_text" id="meta_box_description_text" style="szerokość:100%; wysokość:100px;text-align:left;"> <?php echo $textbox; ?> </textarea> <?php } add_action( 'save_post', 'epr_description_meta_box_save' ); function epr_description_meta_box_save( $post_id ) { if( define( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return; if( !isset( $_POST['meta_box_nonce']) || !wp_verify_nonce( $_POST['meta_box_nonce'], 'my_meta_box_nonce') ) return; if( !bieżący_użytkownik_can( 'edit_post' ) ) return; $allowed = array( 'a' => array( 'href' => array() ) ); if( isset( $_POST['meta_box_description_text']) ) update_post_meta( $post_id, 'meta_box_description_text', wp_kses( $_POST['meta_box_description_text'], $allowed ) ); } ?> ----- **EDIT 2 : Przykład usuwania wcięć po zapisaniu z pomocą Chrisa** ----- <?php // Zarejestruj Meta pola typu własnego posta -- Opis Pole add_action( „add_meta_boxes”, „store_description_meta_box_add”); function store_description_meta_box_add() { add_meta_box( 'epr_store_description_meta_id', 'Opis produktu', 'store_description_meta_box_cb', 'epr_store', 'normalny', 'high' ); } function store_description_meta_box_cb( $post ) { $values = get_post_custom( $post->ID ); $textbox = isset( $values['meta_box_description_text']) ? esc_attr( $wartości['meta_box_description_text'][0] ) : ''; wp_nonce_field( 'my_meta_box_nonce', 'meta_box_nonce' ); ?> <textarea name="meta_box_description_text" id="meta_box_description_text" style="szerokość:100%; wysokość:100px;text-align:left;"><?php echo esc_attr($textbox); ?></textarea> <?php } add_action( 'save_post', 'epr_description_meta_box_save' ); function epr_description_meta_box_save( $post_id ) { if( define( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return; if( !isset( $_POST['meta_box_nonce']) || !wp_verify_nonce( $_POST['meta_box_nonce'], 'my_meta_box_nonce') ) return; if( !bieżący_użytkownik_can( 'edit_post' ) ) return; $allowed = array( 'a' => array( 'href' => array() ) ); if( isset( $_POST['meta_box_description_text']) ) update_post_meta( $post_id, 'meta_box_description_text', wp_kses( $_POST['meta_box_description_text'], $allowed ) ); } ?>


title: Wystawianie niestandardowych elementów typu post z kilku niestandardowych taksonomii

text: Wiem, że zadałem podobne pytanie w niedawnej przeszłości ( **Wyświetlanie wszystkich niestandardowych typów postów przy użyciu określonego terminu na stronie szablonu wspomnianego hasła, w grupach **), ale w tym przypadku szablon jest bardziej skomplikowany. To jest to, co mam na pierwszej stronie witryny. <!---Nagrania wideo na pierwszej stronie--> <div class="div class="twelve columns clearfix" id="clips"> <!---Kod do wyświetlania wideo na pierwszej stronie--> <?php $paged = (get_query_var(' stronicowane')) ? get_query_var('stronicowane') : 1; $the_query = query_posts( array( 'post_type'=>'video', 'posts_per_page'=>90, 'orderby'=>'data', 'paged'=>$paged ) ); // ... ?> "> " rel="zakładka"> 'przód-kciuk') ); else { ?> " title="" rel="zakładka"> ID, 'jetpack-post-views', true ); ?> ', '' ); ?> '; $count = 0; } else $count++; ?> Albo używając tylko tego szablonu, albo tworząc kilka innych, mam wyprowadzić wyniki z czterech różnych taksonomii zwanych kategoriami wideo. Jak to zrobić? Próbowałem naprawić kod, który otrzymałem dwa miesiące temu w połączonym pytaniu, ale pojawiały się błędy. To by mnie mniej więcej uratowało. Z góry dziękuję.


title: jak zmienić rozmiar miniatury

text: Używam tej funkcji do zmiany rozmiaru miniatury , add_image_size( 'portfoliolarg', 120, 120, true); obraz jest corp i zmień rozmiar Chcę tylko zmienić rozmiar mojego obrazu


title: Jak mogę udostępniać kody na moim blogu?

text: Chcę łatwo dodać tag `<code>` do mojego posta. Na przykład dodawanie kodu jest bardzo łatwe w Stackoverflow i innych witrynach. Zasadniczo możemy dodawać kody między apostrofami (``) Potrzebuję czegoś takiego dla Wordpressa . Może mogę użyć do tego funkcji shortcode. Na przykład: `[code="<b>Hello</b>"]` wyświetli się dokładnie tak: `<b>Hello</b>` Podsumowując, udostępniam wiele kodów HTML i PHP z moich czytelników na moim blogu. Potrzebuję łatwego sposobu na ich udostępnienie. Czy to możliwe, jak metoda apostrofowa stackoverflow? A może shortcodes ? Dziękuję...


title: Użyj krótkiego kodu, aby wyświetlić niestandardową zawartość pola meta

text: czy to możliwe? Jeśli tak, czy ktoś może wskazać mi przejrzysty samouczek? Mam kolumnę treści, którą chcę umieścić na prawo od the_content, więc chciałbym móc użyć shortcode, aby umieścić tę zawartość w poście na stronie. Znalazłem (ale chcę to zmodyfikować dla get_post_meta): function get_custom_field_fn() {    global $post; $custom_field_value = get_post_meta($post->ID, 'cf_name', true); zwróć $custom_field_value; } add_shortcode('cf_name', 'get_custom_field_fn'); Zgaduję, że muszę zmienić kilka rzeczy, ale nie jestem pewien, które rzeczy zmienić. Moje niestandardowe pola meta będą miały 8 pól. Zgaduję też, że mój shortcode będzie musiał uwzględniać identyfikator postu/strony, a także muszę wstawić trochę kodu HTML do funkcji.


title: Zapisywanie danych dla różnych niestandardowych postów

text: Mam zarejestrowane trzy różne typy postów: register_post_type('foo' , $args ); register_post_type( 'bar' , $args ); register_post_type( 'baz' , $args ); Kiedy tworzę nowy post, powiedzmy „foo”, chcę zapisać tylko pole meta dla „foo”, co mam zrobić? add_action('save_post', 'save_details'); Tak więc, jeśli mój post_type nazywał się "foo_post": add_meta_box( $id, $title, $callback, // OKREŚL TUTAJ TYP POST!!! "foo_post", $context, $priority, $callback_args ); Co mam zrobić, aby zapisać tylko pole „foo post” podczas tworzenia/edytowania strony „foo post”?


title: wp_insert_post nie kończy się po uruchomieniu przez cron

text: Stworzyłem wtyczkę, która uzyskuje dostęp do kanału XML zawierającego artykuły i zapisuje artykuły z tego kanału jako posty. Możesz ustawić przedział czasu, w którym wtyczka będzie uruchamiana przez WP cron i uzyskać dostęp do kanału, aby sprawdzić, czy są jakieś nowe treści. Wtyczka działa i działała na wielu witrynach, jednak na tej jednej napotyka problem. Każdy artykuł w kanale ma numer identyfikacyjny. Sposób działania wtyczki polega na tym, że po zaimportowaniu nowego artykułu wtyczka pobiera numer identyfikacyjny powiązany z artykułem i zapisuje go w tabeli post_meta. W ten sposób przy każdym kolejnym uruchomieniu wtyczka sprawdza w tabeli postmeta, czy istnieje identyfikator artykułu. Jeśli tak się nie stanie, importuje artykuł i tworzy nowy post, jeśli tak, to nic nie robi. Spotkałem się z problemem polegającym na tym, że po uruchomieniu przez cron wtyczka nie zapisuje identyfikatora artykułu w tabeli postmeta, w wyniku czego tworzy zduplikowane artykuły. Po uruchomieniu ręcznie wszystko działa dobrze. Zawęziłem problem do wywołania `wp_insert_post`. Dzwonię do `wp_insert_post`, aby zapisać post i oczekuję, że zwróci numer identyfikacyjny posta, ale nic nie zwraca. Po dalszym dochodzeniu, gdy jest uruchamiany przez cron, wszystko zostaje zawieszone w funkcji `wp_insert_post` w 'post.php'. Sprowadza się to do wywołania `do_action('save_post', $post_ID, $post);`. Wchodzi w funkcję `_save_post_hook`, ale nie zwraca. Z jakiegoś powodu po prostu na tym się kończy. Nie są zgłaszane żadne błędy i wygląda na to, że cały kod w _save_post_hook jest wykonywany. Nie mam pojęcia, dlaczego tak się dzieje i tak naprawdę nie wiem, dokąd się udać, ponieważ spędziłem wiele dni, patrząc na to i nie wiem, co się dzieje. Każda pomoc jest mile widziana.


title: Jak połączyć zewnętrzne pliki javascript?

text: Pracuję nad niestandardowym motywem Wordpress dla strony moich szefów. Do tej pory wszystko działa idealnie, z wyjątkiem jednej rzeczy... zewnętrzne pliki javascript nie będą działać. Postępowałem zgodnie z dokładną radą z linków tutaj i tutaj, ale nadal nie działa. Przeszukałem kodeks, sprawdziłem kod źródłowy, użyłem firebuga... nie mam pojęcia, dlaczego to nie działa. Niestety, ze względu na umowę NDA, nie mogę przekazać Ci żadnego kodu ze strony ani linku do niej. Więc będę musiał wyjaśnić najlepiej jak potrafię. Użyłem wp_enqueue_script() do dołączenia plików do pliku functions.php. Tagi skryptu w nagłówku są następujące: <script type='text/javascript' src='http://www.xx.com/wp-includes/js/jquery/jquery.js?ver=1.4.4' ></script> <script type='text/javascript' src='http://www.xx.com/wp-content/themes/twentyten/scripts/custom.js?ver=3.1'></script> Pliki się ładują, ale po prostu nie działają. Zastanawiałem się, czy „?ver=3.1” na końcu mojego pliku custom.js może mieć z tym coś wspólnego? Kod z mojego pliku functions.php: function dwadzieściaten_custom_scripts() { if ( !is_admin() ) // instrukcja ładowania tylko wtedy, gdy nie jest to obszar administracyjny { // rejestracja lokalizacji, zależności i wersji skryptu wp_register_script('custom_script' , get_bloginfo('katalog_szablonu') '/scripts/custom.js', array('jquery') ); // umieść skrypt w kolejce wp_enqueue_script( 'jquery' ); wp_enqueue_script('custom_script'); } } add_action('template_redirect', 'twentyten_custom_scripts'); W tym momencie jestem naprawdę zagubiony. Zmieniłem nawet wszystkie moje $('#elem').hide(); do jQuery('#elem').hide(); w pliku custom.js zgodnie z kodem wp_enqueue_script tutaj nie ma sekcji wrapperów konfliktów, nadal nic. Aha, potrzebuję tego pliku do załadowania na wszystkie moje STRONY, ale nie na moim blogu, ponieważ mam wiele „statycznych” stron ustawionych dla głównej witryny. Mam nadzieję, że to ma sens. Z góry dziękuję. Joe.


title: current-menu-item nie działa z niestandardowym typem posta

text: Jestem nowicjuszem w wordpressie i mam denerwujący problem. Mam kilka niestandardowych typów postów (capability_type=post). Dwa z nich stworzyłem za pomocą wtyczki "Custom Post Types" i po umieszczeniu ich kategorii w menu nawigacyjnym działają dobrze. Po kliknięciu otrzymuje pozycję bieżącego menu. Problem dotyczy jednego z innych typów postów (Wydarzenia), który jest tworzony przez wtyczkę "Events Manager". Gdy jego kategorie są zawarte w menu nawigacyjnym i kliknięte, nie otrzymają klasy current-menu-item ... nic nie zaczyna się od current w klasach. Czy ktoś może mi pomóc? Link do strony: http://ideas4web.eu/sedmicata.com/ Spójrz na dużą czerwoną nawigację i wydarzenia li oraz ich podmenu. Przeczytałem ten post, ale nie wiem, jak to zrobić. Drukuj ekran w obszarze administracyjnym tutaj


title: wp_schedule_single_event uruchomione dwa razy

text: Skonfigurowałem metabox z polem wyboru, więc po zaznaczeniu i zapisaniu wpisu zaplanowane wydarzenie jest rejestrowane w celu wysłania wiadomości e-mail do wszystkich użytkowników (około 1200) w tle. Czasami e-maile są wysyłane dwa razy, co sugeruje, że zaplanowane zadanie działa dwa razy (oba e-maile pojawiają się w tym samym czasie, jeden po drugim) Poniżej znajduje się mój kod, czy coś jest nie tak? function my_project_updated_send_email($post_id) { if (wp_is_post_revision($post_id) ) return; if(isset($_POST['send_to_members']) && $_POST['send_to_members'] == "on" && $_POST["post_status"] == "opublikuj"){ $subject = @$_POST['send_to_members_subject' ]; $marks_message = @$_POST['send_to_members_message']; wp_schedule_single_event(time() + 30, 'sendnewpostemail_action', array($post_id, $subject, $marks_message, time(), "")); } } add_action( 'save_post', 'my_project_updated_send_email' ); function sendnewpostemail($post_id, $subject, $marks_message, $time, $preview_email = ""){ ... ... $users = get_users(array( 'meta_query' => array( array( 'key' => ' Receive_new_post_email', 'value' => 'tak' )) )); if ($users){ add_filter( 'wp_mail_content_type', 'set_html_content_type'); foreach($users as $user){ wp_mail($user->data->user_email, $subject, $content ); } remove_filter( 'wp_mail_content_type', 'set_html_content_type' ); } }


title: Jak dodać pole listy do edytora TinyMCE?

text: Mam problem z dodaniem pola listy do edytora TinyMCE w Wordpress. Przeczytałem już w całości to pytanie, ale nie dotarło do mnie do końca: Jak mogę dodać przycisk podziału lub pole listy do instancji WordPress TinyMCE. To rozwiązanie ostrzega tylko o wartości w oknie dialogowym. Chcę faktycznie wstawić krótki kod do edytora TinyMCE i nie mogę zrozumieć, jak. Z powodzeniem mogę dodawać niestandardowe przyciski i pola listy do edytora TinyMCE, a przyciski działają, ale pole listy nie. Oto mój kod functions.php: // dodaj przyciski shortcode do edytora tinyMCE wiersz 3 function add_button_3() { if ( current_user_can('edit_posts') && current_user_can('edit_pages') ) { add_filter('mce_external_plugins', 'add_plugin_3') ; add_filter('mce_buttons_3', 'register_button_3'); } } //ustaw tablicę przycisków shortcode, aby dodać funkcję register_button_3($buttons) { array_push($buttons, "dropcap"); array_push($przyciski, "dzielnik"); array_push($przyciski, "cytat"); array_push($przyciski, "pullquoteleft"); array_push($przyciski, "pullquoteright"); array_push($przyciski, "boxdark"); array_push($przyciski, "podświetlenie"); array_push($przyciski, "togglesimple"); array_push($przyciski, "togglebox"); array_push($przyciski, "karty"); array_push($przyciski, "podpisz"); array_push($przyciski, "lista fantazyjna"); array_push($przyciski, "lista strzałek"); array_push($przyciski, "lista kontrolna"); array_push($przyciski, "lista gwiazd"); array_push($przyciski, "pluslist"); array_push($przyciski, "lista serc"); array_push($przyciski, "infolista"); array_push($przyciski, "kolumny"); zwróć $przyciski; } //ustaw tablicę dla funkcji interfejsu edytora tinyMCE add_plugin_3($plugin_array) { $plugin_array['fancylist'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['arrowlist'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['checklist'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['starlist'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['pluslist'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['heartlist'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['infolist'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['signoff'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['dropcap'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['divider'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['quote'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['pullquoteleft'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['pullquoteright'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['boxdark'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['boxlight'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['togglesimple'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['togglebox'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['tabs'] = get_bloginfo('template_url').'/js/customcodes.js'; $plugin_array['columns'] = get_bloginfo('template_url').'/js/customcodes.js'; return $tablica_wtyczek; } add_action('init', 'add_button_3'); // dodaj funkcję add_button do init strony A oto mój JS do dodawania pola listy do edytora TinyMCE: // Tworzy nową klasę wtyczki i niestandardowy listbox tinymce.create('tinymce.plugins.columns', { createControl: function(n, cm) { switch (n) { case 'kolumny': var mlb = cm.createListBox('kolumny', { title: 'Dodaj kolumnę', onselect : function(v) { tinyMCE.activeEditor.windowManager. alert('Wybrana wartość:' + v); } }); // Dodaj kilka wartości do pola listy mlb.add('Jedna trzecia', 'jedna_trzecia'); mlb.add('Jedna trzecia (ostatnia)', 'one_third_last'); mlb.add('Dwie trzecie', 'dwie_trzecie'); // Zwróć nową instancję listbox return mlb; } return null; } }); tinymce.PluginManager.add('kolumny', tinymce.plugins.columns); Co muszę zmienić w JS, aby rzeczywiście dodać krótki kod do mojego edytora, zamiast tylko wyświetlać wartość pola listy w modalnym oknie dialogowym?


title: Używanie tłumaczenia register_post_status() tylko w liczbie mnogiej we wtyczce

text: tl;dr: Moja wtyczka chce tłumaczyć ciągi z rdzenia lub innych wtyczek, które używają _n_noop(). Jak? To pytanie dotyczy tej wtyczki i jest swego rodzaju kontynuacją tego pytania. Moja wtyczka dodaje „{status} (n)” (np. „Wersje robocze (10)”) do menu administratora dla dowolnego typu postu. Obsługuje każdy status posta dodany za pomocą `register_post_status()`, ponieważ pobiera wszystkie statusy za pomocą funkcji `get_post_stati()` (a nie irytująco podobnego `get_post_status()`). Kiedy ktoś rejestruje status postu za pomocą `register_post_status()`, dodaje się wartość `label_count` w `$args`, która jest idealna do tego, czego potrzebuję. Zawsze chciałbym wyświetlić licznik etykiet _plural_ w menu i użyć `sprintf()` do pominięcia wartości licznika. Oto skrócony fragment **bieżącego kodu wtyczki** (ten pierwszy `sprintf()` jest tym, co chcę zmienić): <?php // tablica wszystkich statusów $ps_statuses = get_post_stati( array( 'show_in_admin_status_list' => prawda ), 'obiekty' ); // filtr listy statusów dla wszystkiego, co ludzie chcą robić, który jest specyficzny dla wtyczki $ps_statuses = apply_filters( 'psmi_statuses', $ps_statuses ); // Pobierz liczniki statusu wszystkich typów postów $ps_status_counts = wp_count_posts( $ps_type_id ); foreach( $ps_status as $status ) { $ps_status_id = $status->name; $ps_status_count = $ps_status_counts -> $ps_status_id; // Jeśli status ma jakieś posty, pokaż je if( $ps_status_count > 0 ) { // Pobierz etykietę statusu postu w liczbie mnogiej $ps_status_label = $status->label_count['plural']; $submenu[$menu][] = array( sprintf( $ps_status_label, $ps_status_count ), 'read', sprintf( '%1$sedit.php?post_status=%2$s&post_type=%3$s', get_admin_url() , $ps_status_id, $ps_type_id ) ); } } Działa to dobrze, ale jest nieprzetłumaczalne. Widzę, że kiedy WordPress rejestruje post stati **w rdzeniu (in`/wp- include/post.php`)**, używa funkcji `_n_noop()`, aby umożliwić tłumaczenie w liczbie mnogiej: register_post_status( 'draft' , array( 'label' => _x( 'Draft', 'post' ), 'protected' => true, '_builtin' => true, /* tylko do użytku wewnętrznego. */ 'label_count' => _n_noop( 'Draft (%s)', 'Wersje robocze (%s)' ), ) ); Jednak nie byłem w stanie wymyślić, jak sprawić, by przetłumaczony ciąg działał. Myślę, że muszę użyć `translate_nooped_plural()`, ale nie udało mi się to uruchomić (i tak naprawdę chcę użyć ciągu w liczbie mnogiej, nawet jeśli w statusie jest tylko jeden post). Po drugie, naprawdę nie wiem, jakiej domeny tekstowej powinienem użyć, ponieważ statusy mogą pochodzić z rdzenia, niestandardowego wywołania lub `register_post_status()`, lub wtyczki, takiej jak przepływ edycji.


title: Dlaczego Wordpress przechowuje opcje widżetów w wielowymiarowej tablicy?

text: Mam widget z 6 różnymi opcjami. Kiedy używam `get_option`, daje mi wielowymiarową tablicę, ze wszystkimi moimi opcjami wewnątrz tablicy wewnętrznej, na przykład: $options = get_option('widget_widgetname'); var_dump($opcje); A wynik dla `var_dump` to: array(2) { [2]=> array(5) { ["ciąg"]=> ciąg(6) "Szukaj" ["tytuł"]=> ciąg(12) " WDSearchForm" ["show_wrapper"]=> string(0) "" ["animate"]=> string(0) "" ["animateWidth"]=> string(2) "80" } ["_multiwidget"]=> int(1) } Dlatego, aby użyć tych opcji, musiałbym wykonać `$options[2]["NazwaOpcji"]` zamiast żądanego `$options["NazwaOpcji"]`. Dlaczego Wordpress to robi? Czy zawsze będzie poniżej „2”? Czy istnieje lepszy sposób na odzyskanie tych opcji?


title: WP supersize nie wyświetla się, gdy wybrane są flagi różnych języków

text: Mam bardzo dziwny problem z tą stroną. Slajdy tła pojawiają się, gdy twoja flaga angielska, ale po przełączeniu na flagę hiszpańską lub inną flagę, tła się nie pojawiają. Link do strony Kod generujący flagi <?php // SELECTOR DE IDIOMAS // function language_selector_flags(){ $languages = icl_get_languages('skip_missing=0&orderby=code'); if(!empty($languages)){ foreach($języki jako $l){ if(!$l['active']) echo ''; echo ''; if(!$l['aktywny']) echo ''; } } } //if ( is_page(array( 'nazwastrony', 'nazwastrony', 'nazwastrony','nazwastrony'))) { language_selector_flags(); //} ?> Tła są generowane przez wtyczkę o nazwie wp_supersized. Jestem nieco zdezorientowany, dlaczego to nie działa, chyba że niektóre kody html zostaną zmienione po aktywowaniu flag językowych. Dzięki za wszelką pomoc.


title: Powiąż stronę z użytkownikiem

text: Obecnie mamy konfigurację, w której każdy może zarejestrować się jako użytkownik, a jego własna „strona” jest tworzona ręcznie przez administratora. Potrzebujemy opcji menu, która będzie czymś w rodzaju „Wyświetl swoją stronę” i skieruje użytkownika do jego własnej strony. Nie mogę się nad tym pogodzić, ponieważ nie ma aktualnego linku między użytkownikiem a stroną utworzoną ręcznie... jakieś myśli? Dziękuję.


title: Zmiana obrazu nagłówka motywu 2011 na podstawie listy rozwijanej użytkownika

text:
Pisałem wcześniej o zmianie CSS mojej strony na podstawie wyboru użytkownika z rozwijanego menu i przechowywaniu go w ciasteczku, co myślę, że teraz rozwiązałem i działam pod następującym adresem http://somethingoriginal.net . Jednak próbuję zmienić obraz nagłówka wraz z motywem i okazuje się to znacznie trudniejsze niż początkowo sądziłem. Zasadniczo chcę to zrobić w moim pliku header.php: if (motyw dzienny) użyj css dnia (GOTOWE) setDayHeader() if (motyw nocny) użyj css nocnego (GOTOWE) setNightHeader() Próbowałem wywołać to z funkcji. php, który niestety nic nie robi, wiem, że jest wywoływany, ponieważ sprawdziłem za pomocą echo statemnets: function setDayHeader(){ //Ustaw nagłówek na dzień header $args = array( 'width' => 1000, 'height' => 288 , 'default-image' => get_template_directory_uri() . '/images/headers/CośOriginalSun.png', ); add_theme_support( 'niestandardowy nagłówek', $args ); } function setNightHeader(){ $args = array( 'width' => 1000, 'height' => 288, 'default-image' => get_template_directory_uri() . '/images/headers/SomethingOriginalTheMoonAndStars.png', ); add_theme_support( 'niestandardowy nagłówek', $args ); } I spróbowałem zmienić go bezpośrednio w kodzie HTML pliku header.php, zaczynając tutaj:
  zmieniając następujący wiersz : <img src="<?php obraz_nagłówka(); ?>" szerokość="<?php echo $szerokość_obrazu_nagłówka; ?>" wysokość="<?php echo $wysokość_obrazu_nagłówka; ?>" alt="" /> Albo przez zastąpienie **header_image()** zmienną lub bezpośrednie zastąpienie jej adresem URL, ale wydaje się, że mój obraz nagłówka całkowicie znika. Pomyślałem, że najlepiej będzie zrobić osobny post na ten temat, ponieważ teraz dotyczy to innej funkcjonalności niż ustawianie mojego arkusza stylów. Dziękuję.


title: %page%/number nie zwrócił 404, ale przekierował do /%page%/

text: Mam stronę, np. /około/ kiedy po ukośniku wstawiam jakieś cyfry (nie litery) to wciąż otrzymuję tę samą stronę. Naprawdę chcę tam 404. Czemu? Co zrobić, aby tego uniknąć? SEO itp...


title: Pobierz obraz z biblioteki multimediów. Zmagasz się z kodem?

text:
Walcząc z tym kodem, warunki działają, jedynym sposobem, w jaki mogę uzyskać wp_get_attachment_url, jest pętla przez niego, ale wtedy wyświetla tyle obrazów z biblioteki multimediów, a chcę tylko jednego?
 <?php if ($imgurlbase != '' ) { ?> <img src="<?php bloginfo('template_url'); ?>/timthumb.php?src=<?php echo $imgurlbase . $imgfromtv; ?>&h=62&w=75" alt="<?php echo $program; ?>"> <?php } elseif ($imgurlbase == '' ) { ?> <?php $args = array( 'post_type' => 'attachment', 'numberposts' => -1, 'post_status' => null, 'post_parent' => null, ); $załączniki = get_posts( $args ); foreach ( $attachments as $attachment ) { if ($attachment->post_title == $program) { echo wp_get_attachment_url($attachment->ID); } else { echo ''; } } ?> <?php } ?>


title: Najlepszy sposób na pokazanie mapy oznaczonych postów?

text: To wydaje się takie proste, że wyrywam sobie włosy. Chcę dodać stronę z mapą pokazującą wszystkie posty z określonym tagiem. Chcę, aby każdy znacznik wyświetlał się z tytułem i podglądem, umożliwiając odwiedzającemu kliknięcie i przeczytanie całego posta. Idealnie chciałbym móc używać mapy OpenStreetMap jako tła zamiast Google. Spojrzałem na geopress, geomashup, wpgeo i osm. Wszystkie są albo niskiej jakości, albo pozbawione kluczowej funkcji. Jakieś sugestie?


title: Niestandardowe znaczniki HTML <blockquote>

text:
W Wordpress, chciałbym dodać własny styl do elementów `<blockquote>`, zastępując domyślne użycie Wordpress za pomocą funkcji (lub jakkolwiek jest to najłatwiejsze). Podczas korzystania z edytora WYSIWYG, podświetlania tekstu, a następnie klikania przycisku „blockquote”, chciałbym, aby podświetlony tekst był otoczony następującym kodem HTML, a nie tylko tagiem „
”:

PODŚWIETLONY TEKST


title: Jak ograniczyć dostęp do panelu tylko dla administratorów?

text: Jak ograniczylibyśmy dostęp do obszaru administracyjnego WP do wszystkich użytkowników z wyjątkiem administratorów? Użytkownicy na naszej stronie mają własne strony profilowe, które wykonują wszystkie potrzebne im funkcje. Więc admin powinien być niedostępny dla wszystkich z wyjątkiem administratorów. Jak to zrobić?


title: Problem z kodowaniem znaków po zmianie serwerów

text: Niedawno przeniosłem moją witrynę opartą na WordPressie z DreamHost VPS na Linode VPS z systemem Debian + LEMP. Po ponownym uruchomieniu witryny zauważyłem wiele błędnych znaków w postach; znaki takie jak " i - zostały zastąpione bełkotem. Po dokładnym rozejrzeniu się, wydawało się jasne, że problem dotyczył kodowania znaków. Znalazłem przewodnik, który sugerował edycję `wp-config.php` i skomentowanie wierszy: ` define('DB_CHARSET', 'utf8');` i `define('DB_COLLATE', '');` Zrobiłem to i naprawiłem problem, ale zastanawiam się, czy to był najlepszy sposób na rozwiązanie tego problemu. Dziękuję za wszelkie rady.


title: $post>ID wyświetla nieprawidłowy identyfikator posta

text: Wcześniej zadawałem pytanie o wystawienie wszystkich podstron: Wystawianie wszystkich podstron? Ale wszystkie pytania były błędne. W każdym razie mam teraz prostsze pytanie. globalny $post; echo $post>ID Działa całkiem dobrze, ale tylko na stronach bocznych. Kiedy znajduje się obok pętli bloga (w sekcji blogu), robi się szalony, na przykład Blog ma ID 216 (a $post>ID w loop.php pokazuje 216), ale $post>ID na pasku bocznym pokazuje 87. Dlaczego to się dzieje? Jak to naprawić? Dziękuję Ci! [edytuj] Mam podejrzenie, że pętla i pasek boczny są osobno uwzględnione na stronie indeksu, a pętla otrzymuje inny identyfikator posta niż pasek boczny. Najważniejsze pytanie brzmi, jak to zmienić. [edycja dla Rarsta] wp_reset_postdata(); globalny $post; $children = wp_list_pages('title_li=&child_of='.$post->ID.'&echo=0'); echo $dzieci; Daje ten sam wynik. Działa ze stronami, a nie blogiem. Mam normalną pętlę, jak na przykład w Twenty Ten.


title: WP e-Commerce wyłącza bezpłatną wysyłkę w niektórych krajach

text: Używam wtyczki WP e-Commerce w wersji 3.8.9.5. Mam włączoną bezpłatną wysyłkę, jeśli kwota przekracza, powiedzmy 75,00 €. Moim głównym krajem jest Holandia, dostarczam do Belgii i Niemiec. Obecnie bezpłatna wysyłka jest dostępna dla wszystkich krajów. Chcę tylko, aby bezpłatna wysyłka była włączona w moim głównym kraju, Holandii. Wszystkie inne kraje powinny zawsze płacić za wysyłkę. Jak mogę to umożliwić?


title: Przechowywanie niestandardowych opcji widgetów pulpitu nawigacyjnego w wordpressie

text: Używam przykładu Codex do budowania niestandardowego widżetu. Konkretny przykład wydaje się działać dobrze, dopóki nie klikniesz konfiguruj i nie zmienisz wartości opcji. Po kliknięciu prześlij zmiany nie zostaną zapisane. Czy ktoś ma ten sam problem z konkretnym przykładem? Próbuję zbudować niestandardowy widżet, używając tego jako przykładu.


title: Wybierz swój mózg w instrukcji wp-config.php if dla wielu witryn

text: Próbuję napisać instrukcję if do wp-config.php, aby włączyć tylko define('WP_DEBUG', true); jeśli nie jest to główna witryna w instalacji WordPress Multisite. Po prostu nie wiem, ile funkcji kodeksu WordPress mogę wywołać z pliku konfiguracyjnego. Myślałem, czy ( is_main_site($blog_id)) { define('WP_DEBUG', false); } else { define('WP_DEBUG', true); } Ale pomyślałem, że w tym przypadku wybiorę mózg społeczności.


title: Upuść posty z kategorii w MySql

text: Czy istnieje sposób na usunięcie wszystkich postów ze wszystkich kategorii? Znalazłem wtyczkę do tego, ale jest bardzo wolna. Potrzebuję zapytania MySql, które pomoże mi usunąć wszystkie posty ze wszystkich kategorii. Jeśli wiesz, jak zaimplementować ten sam kod, ale tylko do określonej kategorii, przydałoby się to również w celach informacyjnych. Jak więc oddzielić wszystkie posty należące do jednej kategorii od wszystkich kategorii (więc będą one należeć tylko do domyślnej kategorii „bez kategorii”). Wielkie dzięki.


title: inny szablon dla niestandardowej strony postów pierwszego i drugiego poziomu

text:
Mam niestandardowy typ postu, na przykład produkty. Mogą być wielopoziomowe, np. strony, np. Produkty (własny typ postu) Książki |- LOTR |- Sherlock Holmes |- Pomoc w gotowaniu |- etc CD |- Iron Maiden |- AC/DC |- Brainstorm |- etc Instrukcje |- Instrukcja MS Word |- Instrukcja MS Excel |- Instrukcja PHP Potrzebuję osobnych stron dla pierwszego poziomu hierarchii (książki, CD, podręczniki), co mogę osiągnąć tworząc plik archive-products.php w katalogu motywów, a następnie nowe zapytanie z parametrem, aby uzyskać tylko pierwszy poziom. Problem dotyczy drugiego poziomu. Nie wiem, jak stworzyć plik szablonu do wyświetlania elementów potomnych m.in. Książki ? Oczywiście mogę nim zarządzać za pomocą jquery. Zbierz wszystkie poziomy hierarchii, następnie ukryj drugi poziom i po kliknięciu Nazwa pierwszego poziomu otwórz podpoziom i ukryj pierwszy poziom, ale nie jest to rozwiązanie, które muszę osiągnąć z powodu braku poprawnego url. Chcę uzyskać prawidłowy adres URL dla 1 poziomu www.ddd.com/products/, a także dla drugiego poziomu www.ddd.com/products/books/ Jak możesz to osiągnąć? AKTUALIZACJA Oto co mam w moim archiwum-POSTTYPE.php. <?php get_header();?>
 <? $query = nowe WP_Query( 'post_type=produkty&post_parent=0' ); while( $query->have_posts() ) : $query->the_post(); echo '
'; tytuł(); echo '
'; koniec; wp_reset_postdata(); ?>
 <?php get_footer();?> i single-posttype.php <?php get_header();?>
 <?php if (is_child_post()){ / /to jest prawdziwy pojedynczy produkt the_title(); }else{ //to jest lista produktów rodzica $query = new WP_Query( 'post_type=produkts&post_parent='.$post->ID.'' ); while( $query->have_posts() ) : $query->the_post(); echo '
'; tytuł(); echo '
'; koniec; wp_reset_postdata(); } ?>
 <?php get_footer();?>


title: W sekcji WordPress Admin, jak mogę połączyć się ze stronami podmenu utworzonymi dla wtyczki?

text: Próbuję więc stworzyć wtyczkę WordPress i stworzyłem kilka stron menu za pomocą tej funkcji: add_submenu_page('my_plugin_menu', 'Edytuj stronę rekordu', 'Edytuj stronę rekordu', 'manage_options', 'edit_record_page', array (&$this, 'display_edit_record_page'); a kiedy wchodzę na stronę, zauważam na pasku adresu w przeglądarce coś takiego: http://mydomain.com/wp/wp-admin/admin.php? page=edit_record_page To, co chcę zrobić, to móc połączyć tę stronę, ale odkryłem, że muszę zakodować link na sztywno z powodu braku lepszego sposobu na zrobienie tego i pracuję na stronie deweloperskiej.Zastanawiałem się więc, jak to zrobić może dynamicznie wygenerować link, który widziałem w mojej przeglądarce, aby po skopiowaniu tego kodu wtyczki na serwer produkcyjny zadziałał.Mianowicie, czy istnieje funkcja WordPress, która wygeneruje część linku strony podmenu create.page=edit_record_page Również, jeśli chcę dołączyć ciągi zapytań do linku, czy jest to tak proste, jak dodanie go ręcznie, tak jak: http://mydomain.com/wp/wp-admin/admin.php?page=edit_record_page&rec_id=1 czy jest też odpowiednia funkcja WordPressa do tego?


title: Pytanie o rozwijanie taksonomii

text: Muszę zastąpić show_option_all (które pokazują wszystkie moje taksonomie) poleceniem, aby pokazać trzy taksonomie (ID 14, 15, 16) i oznaczyć to 'all'. Zasadniczo, gdy ktoś wybierze 'all', chcę tylko pokazać wyniki trzech powyższych taksonomii. Uwaga: nie mogę wykluczyć taksonomii z wyników wyszukiwania, ponieważ wpłynie to na inny formularz wyszukiwania. Proszę pomóż! Mój obecny kod to: http://pastebin.com/NJi2LQhY Dzięki Paul


title: Poczta przez wykonanie Cron nie działa!

text: Hej, więc próbowałem wykonać funkcję php mail i funkcję wp_mail w funkcji PHP w wordpressie. Funkcja php jest wywoływana przez cron hook... Problem polega na tym, że w ogóle nie wykonuje funkcji mail lub wp_mail... Wrzuciłem ją nawet do innej funkcji, o której wiem, że działa idealnie, i znowu cron nie nie wykonywać polecenia poczty. Działa poza funkcją i działa, jeśli wywołam funkcję ręcznie (mojafunkcja();), ale gdy wywoła ją cron, nie działa. jakieś światło? wp 2,9


title: Aukcje archiwalne filtrowane według wartości dat w polu niestandardowym/meta postu?

text: _( **Uwaga moderatora:** Oryginalny tytuł brzmiał „Używając archiwum według daty z niestandardową datą”)_ Dodaję dodatkową datę do postów jako pole niestandardowe. Teraz chcę, aby archiwum pokazywało posty według niestandardowej daty, a nie według daty publikacji. Na przykład mam opublikowany post dzisiaj _(22 grudnia)_, ale niestandardowa data jest ustawiona na _1 stycznia_. Kiedy ładuję adres URL `archives/date/2011/01` w przeglądarce, posty z niestandardową datą pasującą nie są wyświetlane _(oczywiście)._ Czy istnieje sposób na modyfikację zachowania strony generowanej dla `archives/ date/2011/01` URL w celu pobrania postów do niestandardowej daty? Dziękuję.


title: Uniemożliwianie klikania niektórych linków wygenerowanych z funkcji wp_nav-menu?

text: Na tej stronie: http://alexchen.info/brianfunshine/ Mam menu nawigacyjne zaczerpnięte z dwudziestu tematów. Chcę, aby niektóre linki były klikalne, a inne nie (niektóre nie muszą zachowywać się jak link). Udało mi się to osiągnąć za pomocą niektórych CSS, ale nie działa we wszystkich przeglądarkach. Linki są generowane dynamicznie za pomocą: wp_nav_menu Jakieś sugestie?


title: oczyść nazwę pliku załącznika

text: Szukam sposobu, aby oczyścić nazwę pliku załączników przesłanych przez użytkownika. Myślałem, że wordpress już to zrobił, ale napotkałem problemy po tym, jak użytkownik przesłał załącznik zawierający „°” . W ten sposób załącznik nie jest do pobrania. Znalazłem tę funkcję wp: sanitize_file_name ($filename) czy istnieje sposób na użycie jej w akcji add_attachment? Dziękuję


title: Jak zmienić funkcję motywu nadrzędnego za pomocą motywu potomnego?

text: Jest to funkcja ładowana przez motyw nadrzędny. Poprzez motyw potomny chcę zmienić tę funkcję, aby mówiła „is_single” zamiast „is_singular”. Jaki byłby właściwy sposób, aby to osiągnąć? add_action('wp_head', 'dt_specific_enqueues'); function dt_specific_enqueues() { if (is_singular()) { wp_enqueue_script( 'komentarz-odpowiedź' ); } }


title: Aktualizacje wtyczek WP

text: Napisałem wtyczkę do WordPressa, która wymaga regularnych aktualizacji. Czy można powiadomić użytkownika o dostępności nowej wersji (niektóre inne wtyczki mają taką opcję - gdy nowa wersja jest dostępna, użytkownik może ją zobaczyć w swoim panelu administracyjnym i zaktualizować - wszystko za pomocą wbudowanych funkcji WP.. .)


title: poprawne tagi do walidacji typów danych wejściowych

text: Mam następujące typy wejść opcji motywu, które muszę zweryfikować. $liczby = "#1234"; $email = "abc@example.com"; $simeple_text = "Jak leci?"; $code = "<script type='text/javascript'></script>"; Chcę wiedzieć, który z poniższych tagów powinien być używany dla którego z powyższych typów? Próbowałem przeczytać dokumentację Wordpress następujących funkcji, ale nie mogłem znaleźć jasnej odpowiedzi. wp_filter_post_kses wp_filter_nohtml_kses wp_kses_stripslashes


title: Zmień pętlę, aby wyświetlić elementy w kolejności

text: Próbuję dostosować zapytanie wyszukiwania, aby zwracane elementy były uporządkowane w kolejności malejącej. Udało mi się znaleźć pętlę generującą wyniki.... global $wp_query; $args = array( 'post_status' => 'publish', 'post_type' => 'listings', 'meta_key' => '_ct_price', 'orderby' => '_ct_price', 'order' => 'DESC' ) ; // zapisz istniejące zapytanie $existing_query_obj = $wp_query; $wp_query = nowe WP_Query ($args ); //$wp_query = nowe WP_Query( $search_values ); unset($search_values['post_type']); unset($search_values['paged']); unset($search_values['showposts']); /** Przygotuj napis tytułowy, przeglądając w pętli wszystkie wartości, które zamierzamy przeszukać, i połącz je razem */ $search_params = ''; $pętla = 0; foreach ($search_values as $t => $s) { if ($pętla == 1) { $search_params .= ', '; } else { $pętla = 1; } $term = get_term_by('slug',$s,$t); $nazwa = $term->nazwa; $search_params .= '<strong>'. $nazwa .'</strong>'; } Jak widać, dodałem w sekcji $args informacje o kolejności, obecnie nie działa, ale jeśli skomentuję następującą linię. $wp_query = new WP_Query( $args ); I odkomentuj następującą linię.... $wp_query = new WP_Query( $search_values ); Następnie działa, ale ignoruje resztę kodu, czy istnieje sposób na dodanie moich $args do wychodzącego zapytania bez jego łamania?


title: WP_QUERY tax_query nie działa

text: $query_args = array( 'cat' => $lesson_id, 'meta_value' => $lesson_type, 'post__not_in' => array($current_post_id), 'tax_query' => array( array( 'taxonomy' => 'series', 'field' => 'id', 'terms' => $series_id, 'operator' => 'NOT IN' ) ) ); Próbuję wykluczyć posty oznaczone identyfikatorem serii w niestandardowej taksonomii serii, ale to nie działa. Co jest nie tak z kodem?


title: Czy is_page() można połączyć ze strukturą kontrolki przełącznika?

text: Aby dodać atrybuty klasy do tagów używam struktury kontrolki if/else. Czy mogę zamiast tego użyć struktury sterowania przełącznikiem, a jeśli tak, to w jaki sposób? Jeśli nie, czy istnieje lepszy sposób na zrobienie tego niż to, co robię? <div <?php if (is_page( 'projekt' )) { echo 'class="projekt"'; } elseif (is_page('home')) {echo 'class="home"'; } elseif (is_page('kontakt')) {echo 'class="kontakt"'; } ?>> </div>


title: Jak stworzyć frontendową listę HTML do edycji w backendzie?

text:
Chciałbym dodać funkcję do strony, aby wyświetlić krótką listę osób, taką jak ta widoczna tutaj. Zrobiłem to na innych stronach, stylizując listy za pomocą css. Tym razem jednak jest to dla klienta i nie mogę mu ufać, że skopiuje i wklei `<li>`, edytując imię, stanowisko i nazwę img bez zepsucia. Jaki jest najlepszy sposób na stworzenie tego, aby można go było łatwo zmniejszyć/dodać na pulpicie nawigacyjnym? Zasadniczo, aby użytkownik po prostu kliknął „dodaj osobę”, a następnie wypełnił niektóre pola przed aktualizacją strony. Oto architektura tego, czego używałem w przeszłości (do stylizacji za pomocą css)-

  Jakie  jej praca


title: Dowiedz się, czy zalogowany użytkownik nie jest subskrybentem

text: Czy istnieje jakiś tag warunkowy, który pozwoli mi wyświetlić określoną treść tylko wtedy, gdy użytkownik NIE jest subskrybentem?


title: Pojedynczy niestandardowy typ menu przodkiem/rodzicem to strona archiwum postów

text: 1. Utworzyłem motyw, kopiując domyślny motyw `dwadzieścia jedenaście`. 2. Zainstalowałem również moduł Custom Post Type UI i stworzyłem niestandardowy typ posta o nazwie „Book”. 3. Przeszedłem do „Ustawienia -> Czytanie” i ustawiłem „Wyświetlanie strony przedniej” na „Strona statyczna” i ustawiłem moją stronę główną na stronę o nazwie „Strona główna”, a moją stronę z wpisami na stronę o nazwie „Wiadomości i prasa”. 4. Przeszedłem do `Wygląd -> Menu` i stworzyłem nowe niestandardowe menu. W moim menu umieszczam strony „Strona główna”, „Wiadomości i prasa” oraz „Książki” (tylko strona statyczna). W pozycji menu „Książki” dodałem również kilka wpisów typu „Książka” jako dzieci. Teraz, gdy otwieram stronę typu wpis niestandardowego „Książka”, która jest elementem menu podrzędnego strony „Książki”, menu wyróżnia „Wiadomości i prasa” jako element nadrzędny typu wpisu niestandardowego, a także stronę „Książki”. Nie chcę tego zachowania, ponieważ wyróżnianie „Wiadomości i prasy” jako elementu nadrzędnego niestandardowego typu wpisu „Książka” jest całkowicie błędne. Dużo szukałem i widziałem wiele poprawek, które sugerują używanie jQuery, a także kilka poprawek php, które używają identyfikatorów pozycji menu, co jest tylko poprawką bandaida, a nie czymś, co uważam za rzeczywistą poprawkę do problem, ponieważ co z ludźmi, którzy przeglądają z wyłączonym javascriptem, a jeśli użyłem poprawki PHP, to co, jeśli zmienił się identyfikator pozycji menu? Chciałem tu przyjechać i sprawdzić, czy komuś rzeczywiście udało się naprawić to zepsute zachowanie za pomocą podświetlania nadrzędnych/przodków w menu niestandardowych typów postów.


title: Skróć ostatnią aktywność w buddypress

text:
Używam wtyczki buddypress hovercards i wyświetlam niektóre informacje o profilu, a także najnowszą aktualizację statusu. Jeśli użytkownik opublikuje długi status, zabraknie pola div na wizytówce. Jak mogę to poprawnie skrócić?
 <?php _e("Ostatnia aktualizacja", 'bp-hovercards'); ?>
 <?php bp_member_latest_update( 'długość=10' ) ?>


title: Automatyczny akordeon jQuery z tagów nagłówka

text:
Chcę, aby autor postu mógł łatwo skonfigurować akordeon na podstawie tagów nagłówka. Na przykład:
Nagłówek 1

Treść.. lorem ipsum

Nagłówek 2

Treść.. lorem ipsum

 Nagłówek 3

Treść.. lorem ipsum
 zostanie przekonwertowana na to (a więc akordeon jest aktywowany)

Nagłówek 1

Treść.. lorem ipsum

Nagłówek 2

Treść.. lorem ipsum

Nagłówek 3

Treść.. lorem ipsum

 Używałem konfiguracji ze skrótami — ale to staje się zbyt skomplikowane dla autora posta — więc więcej usprawnione rozwiązanie byłoby wspaniałe. Jakieś pomysły, jak bym to zrobił?


title: Wywołanie problemu z niezdefiniowaną funkcją

text: Wiem, że są inne, może lepsze sposoby na to, co chcę osiągnąć, ale muszę skorzystać z tego rozwiązania. Mam dwa arkusze stylów: * `style.css` - normalny arkusz stylów * `style-dynamic.php` - dynamiczny arkusz stylów połączony z pierwszym W drugim używam kodu PHP, na przykład: #body { background-color : <?php echo get_option('theme_background'); ?>; } Teraz chodzi o to, że plik `style-dynamic.php` nie _zna_ funkcji WordPressa, a powyższy kod daje: > **Błąd krytyczny** : Wywołanie niezdefiniowanej funkcji `get_option()` w > **C :\xampp\htdocs\wordpress\wp-content\themes\mytheme\style-dynamic.php** on > line **12** Chyba muszę załadować `wp_load.php` (tylko?) i to jest trudne, bo nie wiem jak dokładnie? Próbowałem `require_once`, ale nie jestem pewien, czy uda mi się przeskoczyć z katalogu motywów do głównego katalogu WordPress, gdzie znajduje się plik `wp-load.php`? **Edytuj** Oczywiście require_once(ABSPATH . 'wp-load.php'); Zwraca inny błąd: > Użycie niezdefiniowanej stałej `ABSPATH` - założono `'ABSPATH'`


title: Jak uzyskać atrybuty krótkiego kodu z posta?

text: Próbuję wyświetlić podgląd galerii NextGen na mojej stronie głównej (i stronach kategorii), aby pokazać pojedynczy obraz z galerii na stronie głównej obok tekstu z postu, który zwykle się pojawia. Znalazłem przykłady PHP, które pobierają obrazy z galerii o podanym identyfikatorze galerii. W mojej pętli mam aktualny post. To, czego nie mogę rozgryźć, to w jaki sposób, biorąc pod uwagę post, uzyskać atrybuty krótkiego kodu [nggallery]. Innymi słowy do każdego posta z galerią NextGEN potrzebuję wartości id z krótkiego kodu. Na przykład, jeśli post zawiera `[nggallery id=50]` potrzebuję wartości `50`. Jak mogę uzyskać te informacje z posta? Miałem nadzieję, że znajdę rozwiązanie w kodzie źródłowym wtyczki następnej generacji, ale oczywiście ten kod zarejestrował obsługę krótkiego kodu i pozwala WP oddzwonić. W ich kodzie źródłowym nie ma przykładów, w których analizują post w poszukiwaniu ich krótkiego kodu.


title: Jak utworzyć niestandardowy adres URL wylogowania w BuddyPress?

text: Czy ktoś wie, jak zastąpić adres URL wylogowania z BuddyPress niestandardowym?


title: WP-Super-Cache - programowo generuj pamięć podręczną

text: Zastanawiam się, czy istnieje możliwość programowego wygenerowania WP-Super-Cache po wyczyszczeniu pamięci podręcznej (po opublikowaniu nowego posta). Pomyślałem o napisaniu jakiegoś robota, który przejdzie przez wszystkie moje strony i wygeneruje w ten sposób nową pamięć podręczną. Ale zastanawiam się, czy jest inna możliwość? PS Ustawiłem ustawienie, że moja pamięć podręczna jest czyszczona po opublikowaniu nowego posta, ale potrzebuję, aby nie cała moja pamięć podręczna została usunięta po opublikowaniu nowego posta, ale tylko jedna dla archiwów i kategorii (ponieważ te są stronami dynamicznymi ) ), więc jeśli jest możliwość wybrania w jakiś sposób jaki cache zostanie wyczyszczony, to nie ma potrzeby ponownego generowania całego cache'u, o czym prosiłem w pytaniu. Mam nadzieję, że wyjaśniłem to. Dziękuję.


title: zastosuj filtry tylko do określonych wpisów bez sprawdzania parametrów adresu URL

text: Zrobiłem niestandardowy typ postu o nazwie: slider, w mojej klasie wtyczek dodaję filtr, który wywołuje metodę remove_row_action, która usuwa linki widoku z akcji add_filter('post_row_actions', array(&$this, 'remove_row_actions'), 10, 1); public function remove_row_actions($action) { if (isset($_GET['post_type']) && $_GET['post_type'] == 'slider')) { unset($action['view']); return $akcja; }else{ return $akcja; } } Działa doskonale, ale uważam, że musi istnieć czystszy sposób, w jaki add_filter dotyczy tylko niestandardowego typu postu, zamiast sprawdzania go za pomocą zmiennej GET


title: Wstaw produkt Woocommerce w określonej kategorii produktów

text: Jestem trochę nowy we wtyczce Woocomerce i mam problem. Muszę tworzyć produkty z kodu, a nie ze strony administratora. Prawdopodobnie wstawię je za pomocą `wp_insert_post($product)`. Problem w tym, że nie wiem jak ustawić kategorię dla tego produktu. Znam nazwę, nie ID (w rzeczywistości znam ID, ale to może się zmienić). Jak mogę dodać produkt do tej kategorii?


title: Dlaczego moja taksonomia ma identyfikator div stylu kategorii?

text: Stworzyłem dwie niestandardowe taksonomie. Stworzyłem je używając identycznego kodu, a następnie wyszukałem i zamieniłem "imię" na "name2". Następnie spojrzałem na stronę typu post i są dwa pola tagów, w których można wybrać tagi. Jednak jeden div nazywa się „namediv”, a drugi to „tagdiv-name2”. Sugerowałoby to, że jeden jest kategorią, a drugi taksonomią. Wiem, że kategorie są rodzajem taksonomii, ale dlaczego moja niestandardowa taksonomia przyjmuje formę kategorii? Dzięki, Simon


title: Pokaż tylko jedną kategorię w głównym zapytaniu, problemy na stronie tagu

text: Zmieniłem następujący kod z Ashfame: add_action('pre_get_posts', 'block_cat_query' ); funkcja block_cat_query() { global $wp_query; if( is_home() || is_search() || is_tag() ) { $wp_query->query_vars['cat'] = '3'; } } Ten kod DZIAŁA, aby filtrować posty z kategorii nr 3 tylko na stronach głównych, wyszukiwania i tagów. Jednakże używam <?php single_tag_title(); ?> w moim pliku header.php i na określonych stronach z tagami, tytuł tagu nie jest wyświetlany. Strona pokazuje zamiast tego tytuł kategorii. Dzieje się tak tylko z tą funkcją w miejscu, więc próbuję dowiedzieć się, czy istnieje inny sposób napisania powyższej funkcji, który nie wpływa na użycie `<?php single_tag_title(); ?>` na stronach znaczników.


title: Wordpress szablon strony

text: > **Możliwy duplikat:** > Wczytujesz pliki szablonów z podfolderu w moim motywie? Jak utworzyć stronę szablonu, która znajduje się w osobnym folderze w katalogu motywów, dla stron, a także otworzyć ją na innych stronach (tj. Link do tych stron szablonów). Utworzyłem folder w moim katalogu motywów, a wewnątrz niego również tworzę stronę szablonu, ale nie działa.


title: Lepsze zapytanie o załącznik Wordpress niż to

text:
Mam stronę z ponad 10.000 postami i obrazami, jej stronę classipress. Muszę jakoś pokazać wszystkie obrazy z postów, które są w stanie oczekiwania i które nie wygasły (meta postów). Oto kod, który wymyśliłem i który działa: function cb_dash_images(){ $args = array('post_type' => 'attachment', 'numberposts' => -1, 'post_status' => null, 'post_parent' => $post_id, 'order' => 'ASC', 'orderby' => 'ID'); $obrazy = get_children($args); foreach($images as $image){ // Pobierz czas wygaśnięcia posta w sygnaturze czasowej $post_time = strtotime(get_post_meta($image->post_parent,'cp_sys_expire_date',true)); // Jeśli wersja robocza i nie wygasła if(get_post_status($image->ID) == 'pending' && current_time('timestamp') < $post_time) { $slika = wp_get_attachment_image($image->ID, 'thumbnail'); edit_post_link( $slika, '
', '
', $image->post_parent ); } } } To działa. ALE przechodzi przez wszystkie obrazy 35k i sprawdza dla każdego z nich, czy jego status nadrzędnego posta jest w toku i czy jego meta nadrzędnego posta wygasła. I to jest naprawdę powolne :) Jak mogę najpierw sprawdzić, czy post jest oczekujący i post w metawartości, a następnie wykonać pętlę, ponieważ w ten sposób nie przejdzie przez 35k obrazów, a tylko obrazy z postów, które są oczekujące i mają określony post wartość meta. Dziękuję Ci!


title: Jak dodać niestandardowy link do menu z adresem URL powiązanym z adresem URL bloga?

text: Częścią mojej pracy jest tworzenie stron internetowych Wordpress. Zwykle pracuję na laptopie, dopóki nie znajdę czegoś wystarczająco dobrego, aby można go było przesłać na serwer testowy, gdzie klient to przegląda. Tworzę VirtualHost dla każdego nowego projektu, więc zawsze pracuję z instalacją Wordpress w domenie, która wygląda jak `http://local.example.com/`, ale kiedy strona jest przesyłana na serwer testowy (niekontrolowany przeze mnie), domeną może być coś w stylu `http://testserver.com/arbitrary/path/example/`. Problem polega na tym, że jeśli dodam niestandardowy link do menu, który wskazuje, na przykład, `/events/`, będzie działał dobrze, tworząc lokalnie link do `http://local.example.com/events/`, ale na serwerze testowym link będzie wskazywał na `http://testserver/events/`, co oczywiście nie jest właściwe. **Chcę nadać niestandardowemu linkowi adres URL, który będzie działał zarówno na moim lokalnym środowisku, jak i na serwerze testowym.** Problem ze zmianą opcji `home` i `siteurl` Wordpressa już radzę sobie poprzez: * zmianę tych ustawienia lokalnej bazy danych * tworzenie zrzutu bazy danych * aktualizacja bazy danych na serwerze * przywrócenie opcji lokalnych. Nie chcę używać pełnych adresów URL dla linków niestandardowych i konieczności zastępowania ich adresem URL serwera za każdym razem, gdy potrzebuję zaktualizować bazę danych serwera. W przypadku linków w treści posta znajduje się wtyczka, która rozwiązuje problem z dodaniem dwóch krótkich kodów: http://wordpress.org/extend/plugins/url-shortcodes/, ale nie udało mi się znaleźć czegoś podobnego dla niestandardowych linków.


title: Zapobiegaj dołączaniu skryptu dwukrotnie (importer wordpress)

text: Stworzyłem własny instalator demonstracyjny, ale mam pewne trudności z poprawnym załadowaniem bezkonfliktowego importera wordpress. Próbowałem uzyskać parametr strony podczas ładowania strony. Jeśli adres URL administratora ma parametr „strona”, załaduję „importer wordpress z mojego folderu. Chcę to zrobić, aby zapobiec duplikowaniu załadowanego pliku importera, gdy chcę użyć standardowego importera wordpress. Jednak nie udało mi się zrobić tego w całości. adres URL funkcji instalacji demonstracyjnej to: localhost/wordpress/wp-admin/admin.php?page=_options&tab=0 Za pomocą tego kodu udało mi się zapobiec dwukrotnemu załadowaniu importera wordpress, ale moja akcja nie działa... js coce i css działają Świetnie. add_action( 'admin_init', 'demo_installer_init' ); funkcja demo_installer_init() { global $wpdb; ; if (current_user_can('manage_options') && isset($_GET['page'])) { if (!defined('WP_LOAD_IMPORTERS')) { define('WP_LOAD_IMPORTERS', true); } if (!class_exists('WP_Import')) { $wp_import = get_template_directory() . '/includes/demo-installer/wordpress-importer.php'; if (file_exists($wp_import)) { wymagają $wp_import; } } wp_register_script( 'demo_installer_js', get_template_directory_uri() . '/includes/demo-installer/demo-installer.js', array('jquery'), '1.0', 1); wp_localize_script( 'demo_installer_js', 'wp_ajax', array('url' => admin_url( 'admin-ajax.php' ), 'nonce' => wp_create_nonce( 'ajax_nonce' ))); wp_enqueue_script( 'demo_installer_js' ); wp_register_style('demo_installer_css', get_template_directory_uri() . '/includes/demo-installer/demo-installer.css'); wp_enqueue_style('demo_installer_css'); add_action( 'wp_ajax_demo_installer', 'demo_installer' ); add_action('wp_ajax_nopriv_demo_installer', '_demo_installer'); } } Z tym kodem mój instalator demo działa doskonale, ale po przejściu do standardowej strony importera wordpress w panelu admina pojawia się błąd: add_action( 'admin_init', 'demo_installer_init' ); funkcja demo_installer_init() { global $wpdb; ; if (current_user_can('manage_options')) { if (!defined('WP_LOAD_IMPORTERS')) { define('WP_LOAD_IMPORTERS', true); } if (!class_exists('WP_Import')) { $wp_import = get_template_directory() . '/includes/demo-installer/wordpress-importer.php'; if (file_exists($wp_import)) { wymagają $wp_import; } } wp_register_script( 'demo_installer_js', get_template_directory_uri() . '/includes/demo-installer/demo-installer.js', array('jquery'), '1.0', 1); wp_localize_script( 'demo_installer_js', 'wp_ajax', array('url' => admin_url( 'admin-ajax.php' ), 'nonce' => wp_create_nonce( 'ajax_nonce' ))); wp_enqueue_script( 'demo_installer_js' ); wp_register_style('demo_installer_css', get_template_directory_uri() . '/includes/demo-installer/demo-installer.css'); wp_enqueue_style('demo_installer_css'); add_action( 'wp_ajax_demo_installer', 'demo_installer' ); add_action('wp_ajax_nopriv_demo_installer', '_demo_installer'); } } Naprawdę nie rozumiem, co się stało Sprawdzam, czy parametr $_Get['page'] i '_option' został poprawnie pobrany... Potrzebuję pomocy, aby zrozumieć, jaki jest właściwy sposób postępowania


title: get_adjacent_post_link exclude_terms zignorowano

text: Wywołuję funkcję 'get_adjacent_post_link' używając argumentu '$excluded_terms'. Ale ten argument jest ignorowany. Tak nazywam funkcję. get_adjacent_post_link( '%link', '', false, array(83, 88, 89, 182), true ); Klikając uzyskany link, mogę dotrzeć do posta, który znajduje się w kategorii „Blog Eintrag (de)”, który ma ten adres URL administratora /wp-admin/edit-tags.php?action=edit&taxonomy=category&tag_ID=83&post_type=post Myślę, że post z tą kategorią powinien być wykluczony argumentem 'array(83, 88, 89, 182)'. Dlaczego tak nie jest? Moja wersja Wordpress to 3.9.1.


title: Podłącz się do filtru zawartości tylko dla interfejsu JSON API

text: Próbuję znaleźć sposób na usunięcie krótkich kodów z moich danych wyjściowych JSON, dla których używam interfejsu API Wordpress JSON. Muszę usunąć skróty z treści przed zastosowaniem `do_shortcode`, co spowoduje renderowanie krótkich kodów. Powodem jest to, że zepsują się w mojej aplikacji mobilnej (odwołują się do różnych js itp. Nie w aplikacji) Znalazłem funkcję Strip Shortcodes, którą mogę podłączyć do filtra `the_content`, ponieważ filtry te są wcześniej stosowane przez wtyczkę koduje go do JSON. Ale jak mogę to zrobić tylko wtedy, gdy pracuję z prośbą o informacje json, ponieważ nie chcę usuwać skrótów z ogólnej witryny. Wiem, że mogę sprawdzić rzeczy takie jak „is_single()” lub „is_home()”, ale nie widzę niczego podobnego, co by mi powiedziało, czy dotyczy to wyjścia JSON. Czy mimo to mogę stwierdzić, czy tak jest, czy nie, więc mogę wybrać, kiedy użyć funkcji skrótów do paska? Jedną z rzeczy, o których myślałem, było sprawdzenie adresu URL, aby sprawdzić, czy jest w nim `json`, ale miałem nadzieję, że może być coś bardziej niezawodnego?


title: wybierz menu przypisz niestandardową taksonomię do klasy opcji

text: Próbuję uzyskać menu wyboru, które używa niestandardowych wartości taksonomii dla postu, a następnie przypisać je do class="" dla opcji. Czuję, że jestem naprawdę blisko, ale mam pewne problemy: 1) Nie mogę uzyskać tytułów postów (które są w niestandardowym typie postów), aby przejść do menu wyboru. Z jakiegoś powodu jego wyświetlanie poza nim. 2) To jest główny powód mojego postu, jak mogę uzyskać warunki (?) lub kategorie niestandardowej taksonomii, w której znajduje się post w niestandardowym typie postu? Oto, co mam: Na potrzeby tego przykładu: $postType = Locations $taxonomy = state_category aw state_category są kategorie State (partner) i City (child). function getLocations($postType, $taxonomy) { $postArgs = array( 'post_type' => $postType, 'post_status' => 'publish', 'posts_per_page' => -1, ); $moje_zapytanie = null; $my_query = nowe WP_Query($postArgs); $menu = '<select name="" id="">'; if( $my_query->have_posts() ) { while ($my_query->have_posts()) : $moje_zapytanie->the_post(); $lokalizacja = tytuł_(); $stateCity = wp_tag_cloud( array( 'taksonomia' => $taksonomia, format => 'lista' ) ); $menu .= '<option class="'.$stateCity.'" value="'.$location.'">'.$location.'</option>'; koniec; } $menu .= '</select>'; echo $menu; wp_reset_query(); } Celem jest, aby $stateCity było terminami (?) lub kategoriami (class="State City"), w których znajduje się post. Dzięki!


title: Uporządkuj wpis kategorii ręcznie po wyświetleniu

text:
Czy istnieje sposób, aby wyświetlić wpis kategorii ręcznie lub w określonej kolejności. Zasadniczo posty są ułożone w kolejności alfabetycznej. To jest prośba klienta ![wpisz tutaj opis obrazu](http://i.stack.imgur.com/j4nyY.jpg) Oto kod do wpisu w kategorii <?php query_posts('posts_per_page=-1&cat=4') ;; if(have_posts()) : while(have_posts()) :the_post(); ?>

 <?php if ( has_post_thumbnail()) { $large_image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'duży'); echo ''; } ?>

 <?php if (class_exists('MultiPostThumbnails')) : MultiPostThumbnails::the_post_thumbnail(get_post_type(), 'secondary-image'); endif; ?>
 <?php the_excerpt(); ?> <a class="learn_more" href="<?php echo get_permalink(); ?>" title="Dowiedz się więcej">Więcej informacji
 <?php endwhile; endif; wp_reset_query();?> Byłoby wielkim kłopotem, gdybym zamiast tego musiał pytać lub dzwonić do każdego postu


title: ?posts_type=xxx nie został przepisany

text: Po kilku kolejnych testach i poprawkach, moim głównym problemem _wydaje się_ być stosowanie reguł przepisywania kolejności, a drugim jest kanonizacja. Używam tego w function.php sprawia, że archiwa roczne działają: /** * Generuj reguły przepisywania archiwum dat dla danego typu posta niestandardowego * @param string $cpt slug typu posta niestandardowego * Reguły @return zwraca zestaw przepisywania zasady obsługi Wordpressa */ function my_generate_date_archives($cpt, $wp_rewrite) { $rules = array(); $post_type = get_post_type_object($cpt); $slug_archive = $post_type->has_archive; if ($slug_archive === false) return $rules; if ($slug_archive === true) { $slug_archive = $post_type->name; } $daty = array( array( 'rule' => "([0-9]{4})/([0-9]{1,2})/([0-9]{1,2}) ", 'vars' => array('rok', 'numer miesiąca', 'dzień')), array( 'rule' => "([0-9]{4})/([0-9]{1 ,2})", 'vars' => array('rok', 'numer miesiąca')), array( 'rule' => "([0-9]{4})", 'vars' => array( 'rok'))         ); foreach ($daty jako $dane) { $query = 'index.php?post_type='.$cpt; $rule = $slug_archive.'/'.$data['rule']; $i = 1; foreach ($data['vars'] as $var) { $query.= '&'.$var.'='.$wp_rewrite->preg_index($i); $i++; } $reguły[$reguła."/?$"] = $zapytanie; $rules[$rule."/strona/([0-9]{1,})/?$"] = $zapytanie."&paged=".$wp_rewrite->preg_index($i); } return $reguły; } Jeśli zrobię `http://domain.com/?post_type=publications&year=2013` żądane posty zostaną wyświetlone, ale adres URL zostanie przepisany na `http://domain.com/2013/?post_type=publications` Jeśli zrobię `http://domain.com/publications/2013/` wyświetlane są prawidłowe posty. Jeśli zrobię `http://domain.com/publications/?year=2013` adres URL przepisuje się do `http://domain.com/2013/` i pokazuje posty na blogu (nie CPT) z tego roku - to pokazuje "poprawne" posty dla adresu URL, ale niepoprawne posty i adres URL, biorąc pod uwagę przekazane przez zapytania zmienne. A więc główny problem jest taki: Jak sprawić, by przepisano zmienną query_var ?post_type=publications do /publications/ i umieścić ją przed /2013/ w adresie URL? Drugi problem to: Dlaczego `http://domain.com/publications/?year=2013` nie przechodzi do `http://domain.com/publications/2013/`? Wygląda na to, że problem z regułą kanonizacji? Dziękuję. * * * --- oryginalne pytanie --- Mam niestandardowy typ posta, ustawiany za pomocą wtyczki Typy o nazwie Publikacje. Ładne permalinki są włączone i zostały ponownie zapisane do wartości opróżniania. Wersja uproszczona: Jak przepisać /?post_type=XXX na /XXX/? Wersja długa: Podczas przeglądania strony archiwum (archive-publications.php, wywołując loop-publications.php) adres URL poprawnie przepisuje się do domeny/publikacje/ Mój problem polega na łączeniu archiwów z lat. Mam trochę kodu w functions.php (przepisz reguły), aby umożliwić działanie archiwów rocznych - więc domain/publications/2013/ wyświetla posty poprawnie. Podobnie domain/?posts_type=publications&year=2013 pokazuje poprawne posty, jednak przepisuje je do domain/2013/?posts_type=publications Jednak domain/publications/?year=2013 przepisuje do domain/2013/ i pokazuje wszystkie posty, nie tylko CPT. Czy możesz mi pomóc, aby to działało "poprawnie"? Myślę, że potrzebuję nowej reguły przepisywania, która zajmuje się post_type= i nadaje jej priorytet nad przepisywaniem roku, czy coś takiego. Dziękuję.


title: Nieskończone przewijanie widżetu na pasku bocznym

text: Próbuję dodać funkcję nieskończonego przewijania do witryny, którą tworzę, ale chcę ją dodać do widżetu paska bocznego. Mam widżet, który pokazuje listę ostatnich postów i chciałbym dodać nieskończone przewijanie do tego widżetu, więc gdy użytkownik przewinie do końca tej listy, będzie miał więcej wyników wczytywania. Znalazłem ten mały skrypt, który robi to w pętli, docenisz pomoc, jak to zmienić, aby działał z widżetem „ostatnich postów”: /* infinte scroll */ function endless_scroll() { global $avia_config; if ( is_archive( ) || ($avia_config['currently_viewing'] == 'blog' && !is_single()) ){ echo '<script type="text/javascript">'; echo 'jQuery(".content").infinitescroll( { navSelector: ".pagination", nextSelector: ".pagination a:first", itemSelector: ".content .post-entry", ładowanie: { img: avia_framework_globals.installedAt + "images/custom/loader.gif" } }, function(){ avia_ajax_call(); } );'; echo '</script>'; } } add_action('wp_footer', 'infinite_scroll'); https://raw.github.com/paulirish/infinite-scroll/ master/jquery.infinitescroll.min.js Również znalazłem tę wtyczkę, ale znowu pozwala ona tylko ustawić i nieskończone przewijanie do strony archiwum.https://wordpress.org/plugins /infinite-scroll/ Przez chwilę łamałem sobie głowę. Docenię każdą pomoc. Dziękuję Ci.


title: Wymiana ThickBox

text: Szukam, niestety bezskutecznie, zamiennika ThickBox używanego w Media Uploader. Żadne wyszukiwanie nie powiedzie się, jak wykorzystać Media Uploader i nic o skrypcie używanym w oknach modalnych. Czy ktoś może mi pomóc? Czy istnieje sposób na użycie tego samego modalu, którego używa Media Uploader, ale umieszczenie w nim niestandardowej zawartości, tak jak było to możliwe w przypadku ThickBox?


title: Wybierz konkretny typ postu według określonej kategorii

text: Mam kilka typów postów i kilka kategorii. Każdy z typów postów ma przypisane 4 lub 5 kategorii. Moje pytanie brzmi, jak pokazać typ postu (post) z określonej kategorii? To jest mój pierwszy: `posts -> post_type(currentissue) -> category(mk,mn,ms,mj)` To jest mój drugi: `posts -> post_type(currentbug) -> category(mk,mm,md)` Jeśli kliknę każdą kategorię, chcę zobaczyć posty związane z tą kategorią. Na przykład, gdybym kliknął kategorię „mk”, powinienem zobaczyć posty currentissue i currentbug. Mam nadzieję, że rozumiesz, o co mi chodzi. Dziękuję za wszelką pomoc.


title: Niestandardowy typ wpisu używany w często zadawanych pytaniach Akordeon

text:
OK, więc zapytałem o to wcześniej i nikt nie miał dla mnie odpowiedzi. Mam CPT dla najczęściej zadawanych pytań. Często zadawane pytania są podzielone na „kategorie”. Potrzebuję nazwy „kategorii”, a następnie każdego posta w tej „kategorii”. Przykład: ## Kategoria 1 ### Tytuł postu 1 w ramach kategorii 1 Treść posta 1 w ramach kategorii 1 ### Tytuł posta 2 w kategorii 1 Treść posta 2 w kategorii 1 ## Kategoria 2 ### Tytuł postu 1 w kategorii 2 Treść posta 1 w kategorii 2 ### Tytuł posta 2 w kategorii 2 Treść posta 2 w kategorii 2 Kod, który mam teraz to: <?// dla danego typu posta, zwróć wszystkie oprócz ' uncategorized' $post_type = 'faq'; $podatek = 'kategoria'; $tax_terms = get_terms($tax, array('orderby' => 'id', 'order' => 'ASC', 'exclude' => '1')); if ($tax_terms) { foreach ($tax_terms as $tax_term) { $args = array( 'post_type' => $post_type, "$tax" => $tax_term->slug, 'post_status' => 'opublikuj', ' posts_per_page' => - 1, 'orderby' => 'tytuł', 'zamówienie' => 'ASC', 'caller_get_posts' => 1 ); // KONIEC $args $my_query = null; $my_query = nowe WP_Query($args); if ($my_query->have_posts()) { echo '

' . $tax_term->nazwa . '

'; while ($my_query->have_posts()) : $my_query->the_post(); ?>

<?php the_title(); ?>
 <?php the_content(); ?>
 <?php endwhile; } // KONIEC if have_posts pętli echo '

'; // Zamknij 'szczegóły', 'wrap' i 'aro' DIV wp_reset_query(); } // END foreach $tax_terms } // END if $tax_terms ?> Ten kod wypisuje każdą „kategorię” indywidualnie, którą chcę. Jednak każdy post w FAQ jest wymieniony pod każdą „kategorią”, co nie jest tym, czego chcę. Jakieś pomysły, co robię źle?


title: Pozbądź się tego ostrzeżenia o ścisłych standardach

text: Próbuję pozbyć się tego ostrzeżenia z mojej instalacji wordpressa. Ścisłe standardy: Tylko zmienne powinny być przekazywane przez odniesienie w xxxxx w linii 67. Linia z "błędnym kodem" to ta $wp_theme_name = next(explode('/themes/', $stylesheet_directory_uri)); Jeśli jednak przekażę wartość na odwołanie zgodnie z żądaniem, WP już się nie ładuje. Czy możesz mi pomóc zrozumieć, jak to naprawić? Dzięki Andrea


title: Moduł z akceptacją wartości GET/POST?

text: W Wordpress, jak stworzyć API, takie jak Module, które akceptuje dane przekazywane za pomocą argumentów Get lub POST. Mam na myśli, że Wordpress powinien być w stanie zaakceptować wywołania URL z zewnątrz, a następnie je przetworzyć. Mam na myśli, że jako zewnętrzna aplikacja lub ja ręcznie, kiedy dzwonię: * http://www.wordpress-site.com/test?name=james&age=14 Następnie jak napisać moduł do odczytywania takich przychodzących wartości GET/POST i przetworzyć go (zapisać je w bazie danych lub coś w tym rodzaju) W rzeczywistości jest to publiczny interfejs API.


title: Błąd WordPressa podczas wylogowania

text: Kilka razy natknąłem się na błąd wylogowania z WordPressa, ale tak naprawdę nigdy nie odkryłem jego przyczyny. Wcześniej zwykle brakowało mi jednego, ale teraz nawet z linkiem do wylogowania wygenerowanym przez `wp_logout_url();`, wita mnie ekran matrycy WP: Próbujesz wylogować się z SITE Czy na pewno chcesz Wyloguj? Co powoduje, że to się uruchamia? **Edytuj:** Tak jak wspomniałem, to działo się losowo, myślę, że coś wymyśliłem. IT działa dobrze z linkiem wygenerowanym przez `wp_logout_url();`, ale jak tylko użyję parametru `$redirect` w `wp_logout_url($redirect);`, zaczynam stawiać czoła problemowi. Jakieś światło w tej sprawie?


title: Jak dołączyć WP_Widget z innego pliku do głównego pliku wtyczki?

text: Próbowałem użyć poniższego kodu w moim głównym pliku: define('MYPLUGINNAME_PATH', plugin_dir_path(__FILE__) ); uwzględnij MYPLUGINNAME_PATH . 'klasa/widget-klas.php'; Następnie mam plik class/class-widget.php z tym kodem: class WpSuperWidget extends WP_Widget { funkcja publiczna __construct() { } }


title: Czym jest plik .php, który generuje stronę niestandardowego tła w panelu administracyjnym?

text: Czym jest plik `.php`, który generuje stronę `Wygląd->Niestandardowe tło` w panelu administracyjnym Wordpress'? ![tutaj wpisz opis obrazu](http://i.stack.imgur.com/kE0QA.png)


title: Przenieś kompilację lokalną z localhost na localhost.com, aby obsługiwać subdomeny

text: Stworzyłem lokalną instalację WordPress Multisite za pomocą MAMP, do której uzyskiwałem dostęp przez `http://localhost/`. Po 2 tygodniach prac programistycznych, stwierdziłem, że muszę dodać subdomenę bloga (`http://blog.localhost.com`), której wymagania dotyczące ustawień WordPressa uniemożliwiają mi, chyba że edytuję plik hosts. Wprowadziłem więc tę zmianę w wp-config.php: define('SUBDOMAIN_INSTALL', true); I edytowałem mój plik hosts jak poniżej: 127.0.0.1 localhost.com 127.0.0.1 blog.localhost.com Ale to nadal nie działa. Próbowałem zatrzymać/uruchomić MAMP, ale to nie pomogło. Zastanawia mnie to: czy nie jest już za późno na tego rodzaju zmiany, skoro moja witryna była pierwotnie skonfigurowana jako `http://localhost/`, a nie jako `http://localhost.com`? Jeśli tak, czy będę musiał zacząć od zera? Jeśli mogę uratować istniejącą instalację, jakie dodatkowe kroki mam podjąć?


title: Jak skonfigurować wtyczkę sieciową w sieci z tylko moimi ustawieniami?

text: Skonfigurowałem stronę WP MU i zainstalowałem wtyczkę na głównej stronie MU. Chcę, aby ta wtyczka była włączona we wszystkich witrynach i ukryta przed administratorami witryn, jeśli to możliwe. Chcę, aby ustawienia wtyczek pochodziły z witryny supersieci, a nie od administratorów witryny. Na mojej stronie wtyczek superadministratora widzę to: ![tutaj wprowadź opis obrazu](http://i.stack.imgur.com/RudcH.png) Zwróć uwagę na link Aktywacja sieci. Włączyłem go, ale nowe witryny nie mają ustawień ze strony głównej, a wtyczka nie jest ukryta (nie jest tak ważne, czy jest ukryta, czy nie).


title: Podaj liczbę postów z określonym meta_kluczem dla każdej meta_wartości

text: Chciałbym posortować moje posty według określonego pola niestandardowego. Jednocześnie dla każdego pola niestandardowego chciałbym policzyć liczbę postów z określoną wartością pola niestandardowego. Mam niestandardowe pole „sklepy” z inną wartością meta (na przykład: „nike”, „adidas”, „puma”,...) i chciałbym mieć taką listę: nike:6 puma:2 adidas :12 Próbowałem z tym, ale działa tylko wtedy, gdy wstawię "ręcznie" wartość niestandardowego pola 'shops': $args = array('meta_query' => array( array('key' => 'shops',' value' => 'Nike')), 'numberposts' => -1, 'category' => -122, 'meta_key' => 'duedate','meta_value' => date("Ymd"),'meta_compare' => '>=' ); $mojeposty = get_posts( $args ); echo 'Nike:' .count($myposts); Jak wstawić wartość pola niestandardowego jako zmienną? Z góry dziękuję za pomoc. _**_** _**UPDATE **_****** Tworzę to <?php $args = array('posts_per_page' => -1,'category' => -122,'meta_key' = > 'duedate','meta_value' => date("Ymd"),'meta_compare' => '>=' ); $the_query = new WP_Query($args);?> <?php if ($the_query->have_posts()) : ?> <?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?> <?php $series = get_post_meta($post->ID, 'sklepy', prawda); ?> <?php if($series): ?> <div> <?php $args1 = array('meta_query' => array( array('key' => 'sklepy','value' => $seria) ),'posts_per_page' => -1,'meta_key' => 'duedate','meta_value' => date("Ymd"),'meta_compare' => '>=','order' => 'ASC') ;?> <?php $rozdziały = new WP_Query($args1); ?> <?php $liczba = $rozdziały->liczba_postów; echo $seria .': '.$liczba; ?> </div> <?php endif; ?> <?php endwhile;endif; ?> i działa, ale wyświetla 'sklepy' jako liczbę postów: nike: 2 puma: 3 nike: 2 adidas: 1 puma: 3 puma: 3 prawdopodobnie coś jest nie tak w pierwszej pętli. Czy mógłbyś mi pomóc? Dziękuję


title: Jak usunąć skrypt cufon z motywu Dzonia Lite?

text: Używam motywu Dzonia Lite na mojej stronie. Kiedy próbuję usunąć skrypt cufon z mojego pliku functions.php, suwaki, które były obecne na stronie, nie działają. Czy ktoś mógłby mi podpowiedzieć jak przezwyciężyć ten problem? # skrypty w mojej funkcji functions.php inkthemes_wp_enqueue_scripts() { if (!is_admin()) { wp_enqueue_script('jquery'); wp_enqueue_script('inkthemes-ddsmoothmenu', get_template_directory_uri() . "/js/ddsmoothmenu.js", array('jquery')); wp_enqueue_script('inkthemes-slides', get_template_directory_uri() . "/js/slides.min.jquery.js", array('jquery')); wp_enqueue_script('inkthemes-jcarouselite', get_template_directory_uri() . "/js/jcarousellite_1.0.1.js", array('jquery')); wp_enqueue_script('inkthemes-confu-ui', get_template_directory_uri() . "/js/cufon-yui.js", array('jquery')); wp_enqueue_script('inkthemes-quicksand-confu', get_template_directory_uri() . '/js/mank-sans.cufonfonts.js', array('jquery')); wp_enqueue_script('inkthemes-custom', get_template_directory_uri() . '/js/custom.js', array('jquery')); } elseif (is_admin()) { } }


title: Wyświetl flagę kraju w profilu Wordpress/Buddypress

text: Mam nadzieję, że ktoś mógłby mi pomóc z pytaniem dotyczącym wyświetlania flag państw obok nazwy członka. W tej chwili używam niestandardowej meta zawierającej kraj, a następnie powtórz flagę, jeśli warunek jest spełniony. Zamiast pisać setki linii kodu, aby wyświetlić flagę w ten sposób, czy istnieje bardziej wydajny lub mądrzejszy sposób kodowania tego. Nie wyobrażam sobie, aby wyświetlanie setek linii kodu w members-header.php mogło być dobre. Oto kod, którego używam do wyświetlania flagi dla Korei: <?php global $bp; $korea = get_usermeta( $bp->displayed_user->id, 'location' ); if( $korea == 'korea' ); echo '<img src="http://www.mojadomena.com/flags/KR.gif" border=0>'; ?> Jakakolwiek pomoc byłaby bardzo mile widziana. Tomek


title: Widżet do wyświetlania postów na pasku bocznym na podstawie jego identyfikatorów

text:
Próbuję utworzyć widżet, który wyświetla posty na pasku bocznym, przyjmując identyfikatory postów jako dane wejściowe od użytkownika. Wynikiem mojego kodu jest to, że widżet wyświetla tylko pierwszy wprowadzony identyfikator i ignoruje pozostałe. Przykład: jeśli moje dane wejściowe w widżecie to 1236, 1234, 1235, interfejs widżetu wyświetli tylko post o identyfikatorze 1236. To jest kod mojego widżetu: <?php /* Nazwa wtyczki: Post in Sidebar Plugin URI: Opis: Autor: Wersja: 1.0 URI autora: */ class postInSidebar extends WP_Widget { public function __construct() { // Utwórz element nadrzędny widgetu::__construct( 'postInSidebar', // ID 'Opublikuj na pasku bocznym', // Tablica nazw( ' description' => 'Opublikuj na pasku bocznym pozwala wybrać niektóre recenzje aplikacji i pokazać je na pasku bocznym' ) ); // Opis } public function widget( $args, $instance ) { // Frontend extract($args, EXTR_SKIP); echo $before_widget; $title = pusty($instancja['title']) ? ' ' : apply_filters('widget_title', $instance['title']); if (!empty($title)) echo $before_title . $tytuł . $po_tytule; // uruchom frontend postInSidebar $wp_query = new WP_Query( array ( 'post_type' => 'post', 'post__in' => array($instance['postsToShow']), 'orderby' => 'post__in' )); ?> <?php if ( $wp_query->have_posts() ) : while ( $wp_query->have_posts() ) : $wp_query->the_post(); ?> <div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
 <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"> <?php the_title(); ?> - <?php the_ID(); ?>

 <?php endwhile; else: ?>
Nie ma jeszcze postów, przejdź do wyglądu -> widżety i wybierz, które posty mają się tu wyświetlać.
 <?php endif; ?> <?php wp_reset_postdata(); // koniec frontendu postInSidebar echo $after_widget; } public function update( $nowa_instancja, $stara_instancja ) { // Aktualizacja $instancja = $stara_instancja; $new_instance = wp_parse_args((array) $new_instance, array( 'title' => '', 'postsToShow' => '' )); $instance['title'] = strip_tags($new_instance['title']); $instance['postsToShow'] = strip_tags($new_instance['postsToShow']); zwróć $instancję; } public function form( $instance ) { // Backend $instance = wp_parse_args( (array) $instance, array( 'title' => '', 'postsToShow' => '' )); $tytuł = esc_attr($instancja['tytuł']); $postsToShow = esc_attr($instance['postsToShow']); ?>
 <label for="<?php echo $this->get_field_id('title'); ?>"> Tytuł: <input class="widefat" id="< ?php echo $this->get_field_id('tytuł'); ?>" name="<?php echo $this->get_field_name('title'); ?>" type="text" value="<?php echo esc_attr($title); ?>" />

 <label for="<?php echo $this->get_field_id('postsToShow' ); ?>"> Posty do pokazania: <input class="widefat" id="<?php echo $this->get_field_id('postsToShow'); ?>" name="<?php echo $this->get_field_name ('postsToShow'); ?>" type="text" value="<?php echo esc_attr($postsToShow); ?>" />
 <?php } } add_action( 'widgets_init', function(){ register_widget( 'postInSidebar' ); });


title: Jak dodać niestandardowy tag szablonu w motywie wordpress?

text: Pracuję nad witryną WordPress, jest to witryna gazety internetowej. Motyw, który rozwijam, chcę dodać niestandardowe funkcje szablonu, takie jak `get_footer()` lub `get_header()`, aby móc zapisywać te kody HTML i PHP, tak jak przechowuje `footer.php`. Z góry dziękuję.


title: Usuń nieprawidłowe myślniki z get_the_title()

text: Mam konkretny post CPT, który ma w tytule myślnik (-). Kopiuję ten tytuł do zmiennej `$var` za pomocą `get_the_title()`, a następnie tworzę niestandardowe pole w innym miejscu o wartości równej `$var` : `add_post_meta($my_post_id, 'some_name', $var);` Problem: w polu niestandardowym myślnik stał się encją HTML z „&”, „#” i 4-cyfrowym numerem. Dlaczego i jak rozwiązać problem?


title: Uzyskiwanie strategii debugowania WordPress

text: Czytałem o debugowaniu. Obejrzałem film Chipa Bennetta na wordpress.tv i zostałem zainspirowany do poważnego potraktowania debugowania. To, co znalazłem w moich lekturach, trochę mnie zdezorientowało. Wiem o `define('WP_DEBUG', true );` i niektórych wtyczkach debugowania, takich jak 'pasek debugowania' i 'firephp', a także 'rejestruj przestarzałe funkcje'. ale nie potrafię wyobrazić sobie ogólnej strategii. Mam na myśli to: czy można po prostu użyć `define('WP_DEBUG', true );` ... a jeśli tak, to do czego służą wtyczki. Myślę, że rozumiem różnicę między nimi i na przykład mówię „rejestruj przestarzałe funkcje”, ale jestem nieco oślepiony światłem, które myślę w odniesieniu do innych. Wiem, że mógłbym po prostu zainstalować każdą wtyczkę i bawić się nią, dopóki nie będę mógł odpowiedzieć na to pytanie, ale naprawdę miałem nadzieję, że ktoś zaoszczędzi mi czasu z małym kierunkiem. Głównie to, co chcę wiedzieć, to: czy mam rację, myśląc, że `define('WP_DEBUG', true );` jest miejscem, w którym się zaczyna, a wtyczki po prostu się poprawiają, więc jeśli dostanę JEDNĄ dobrą wtyczkę, która działa dla ja, to nie muszę koniecznie robić niczego innego (jak używanie kombinacji tych wtyczek) ... LUB jest prawdopodobnie konieczne użycie kombinacji wtyczek i pomocy do debugowania, a jeśli tak, jakie są zalecenia ludzi.


title: convertEntities() używane przed zdefiniowaniem

text: Mam błąd wygenerowany podczas ładowania grubego pudełka na każdej stronie, w tym w obszarze administracyjnym. Jest to drukowane w html <script type='text/javascript'> <![CDATA[ */ var ThickboxL10n = { next: "Dalej >", prev: "< Prev",image: "Image", z: "of", close: "Close", noiframes: "Ta funkcja wymaga wbudowanych ramek. Masz wyłączone ramki iframe lub Twoja przeglądarka ich nie obsługuje." }; spróbuj{convertEntities(thickboxL10n);}catch(e){}; /* ]]> */ </script> Nie bardzo bym się tym przejmował, ale to psuje firefoxa, który jest do niczego, gdy projekt jest w połowie rozwoju. Problem jest tutaj: > convertEntities nie jest zdefiniowany > > Linia 55 try{convertEntities(thickboxL10n);}catch(e){}; Próbowałem go po prostu zatrzymać za pomocą funkcji funkcji conditional_thickbox() { global $post; if (is_singular() && strpos($post->post_content,'class="thickbox"') !== false) { wp_enqueue_script('thickbox'); wp_enqueue_style('thickbox'); } } add_action('wp_print_styles','conditional_thickbox'); To działa dobrze, ale usuwa się zewsząd i zdałem sobie sprawę, że jest to zależność od funkcji przesyłania obrazów Wordpress. Myślę, że znalazłem poprawkę tutaj: http://core.trac.wordpress.org/attachment/ticket/16227/convertEntities-Firebug-Fix.diff Co wymaga zhakowania rdzenia, jakieś pomysły na najlepszy sposób, aby to naprawić?


title: permalinki w tytule tagu

text: Czy mogę umieścić swoją niestandardową strukturę permalinków na tagu tytułowym mojego bloga? moja obecna struktura permalinku to `/%postname%/%location%/%mba_courses%/` gdzie moja lokalizacja i mba_courses są niestandardowymi taksonomiami Teraz chcę to w moim tagu title, czy mogę napisać coś takiego w tagu title? <title><?php echo (/%postname%/%location%/%mba_courses%/); ?><title> Wiem, że to zły kod i nie zadziała, ale czy jest to sposób, gdzie mogę mieć taki tag tytułu?


title: Czy Wordpress Loop ma funkcję taką jak cykl Shopify?

text: Shopify's Cycle umożliwia przełączanie się między rzeczami w pętli. Oto mój przykład: <div class="{% cycle 'pierwszy', 'drugi', 'trzeci' %}"> {% include 'product-grid-item' %} </div> Moje pytanie, czy jest coś takiego to dla Wordpressa? Bardzo chciałbym móc przechodzić przez jakiś rodzaj ustawień - takich jak nazwy klas - gdy każdy element w mojej pętli jest drukowany.


title: Wordpress MailChimp Framework nagle przestał działać bez modyfikacji

text: Miałem skonfigurowany sklep internetowy WordPress i używam [wtyczki MailChimp Framework][1] do wysyłania biuletynu między innymi. Teraz konfiguracja działa od 1 stycznia, a potem nagle framework Mailchimp nagle przestał wysyłać. Status ping "Wszystko jest szympansem" również się nie pojawia, czasami jest to NULL, czasami jest to postać śmieci. Jestem prawie pewien, że nie dotknąłem żadnego kodu wtyczki, a kolega mający zupełnie inny projekt również tego doświadczył. Pamiętam też, że ich odpowiedź była kiedyś „text/json”, ale teraz widzę odpowiedź z Content-type „application/json”. Czy ktoś z was też tego doświadcza? Aktualizacja: odpowiedź API Mailchimp: http://groups.google.com/group/mailchimp-api- dyskutować/browse_thread/thread/f46b9ddfc6725aa3 http://groups.google.com/group/mailchimp-api- dyskutować/browse_thread/thread /8a03c3a9cd3dc3bf Wygląda na to, że występuje problem z nagłym zrywaniem połączeń w trakcie połączenia. Zaktualizowali opakowanie MCAPI. Jeszcze tego nie testowałem.


title: pokaż/ukryj przełącznik dla podstron w obszarze administracyjnym wordpress

text: Mamy witrynę z wordpress używającą wielu podstron do każdej strony - chcę stworzyć przełącznik pokaż/ukryj akordeon w zapleczu, aby wyświetlać i ukrywać podstrony, co pozwoli nam zachować czytelność listy stron. Czy ktoś zna wtyczkę do tego? Miałem google, ale do tej pory nie było wiele radości..


title: Jak zmienić kolejność kategorii w panelu administratora?

text: Kolejność kategorii na desce rozdzielczej jest alfabetyczna. Czy mogę go zmienić na zamówienie niestandardowe?


title: Lepsze wyszukiwanie zaplecza administracyjnego Wordpress

text: Czy istnieje lepsza funkcja wyszukiwania lub wtyczka do obszaru administracyjnego postów lub niestandardowych typów postów, chciałbym móc przeszukiwać niestandardowe pola i może inne zaawansowane wyszukiwania tylko z zaplecza.


title: Przywróć oryginalny pasek administratora WP po instalacji BuddyPress

text: Chcę ponownie włączyć oryginalny pasek administratora WP po zainstalowaniu BuddyPress! `define('BP_DISABLE_ADMIN_BAR', true );` całkowicie wyłącza pasek administratora - nie chcę tego. To pytanie każe nam sprawdzić stronę BuddyPress Codex, a ja próbowałem bawić się tymi hakami akcji, ale nie uzyskałem żadnych pożądanych rezultatów. Czego brakuje? Jak odzyskamy ten pasek administracyjny?!


title: Usuwanie tagów z oEmbed i dodawanie <div>

text:
Mam te dwie funkcje w następujący sposób: function filter_ptags_on_iframe($content){ return preg_replace('/
\s*(*.<\/iframe>)\s*<\/p>/iU ', '\1', $treść); } add_filter('the_content', 'filter_ptags_on_iframe'); oraz: function addSubscribeButton($html, $url, $attr, $post_ID) { wp_register_script('YoutubeJS',("//apis.google.com/js/platform.js"), false, '1.0'); wp_enqueue_script('YoutubeJS'); zwróć $html . '

'; } add_filter('embed_oembed_html', 'addSubscribeButton', 10, 4); Pierwszy usuwa fantomowe znaczniki `<p>` z każdej ramki iFrame i działa dobrze. Druga funkcja dodaje przycisk Subskrybuj z YouTube na dole każdego obiektu oEmbed, ale kiedy używam `addSubscribeButton`, pierwsza funkcja nie działa. Myślę, że to coś o priorytetach. Jakieś sugestie, na czym może polegać problem?


title: Niestandardowy adres URL w Wordpress z add_rewrite_rules i add_rewrite_endpoints

text: Mam następujący adres URL dla funkcji filtra, którą próbuję zbudować w wordpressie: example.com/offers-type-all-inclusive-from-germany-transportation-airplane.html Jak mogę sprawić, by argumenty były opcjonalne, aby linki takie jak przykład .com/offers-type-all-inclusive-transportation-airplane.html lub example.com/offers-type-all-inclusive-from-germany.html przekierowuje mnie do niestandardowej strony szablonu o nazwie filters.php z wypełnioną tablicą filtrów poprawnie: $filters = array( 'type' => 'all-inclusive', 'from' => 'niemcy', 'transport' => 'samolot' ); Próbowałem tego do tej pory add_rewrite_rule('^offers-type-?([a-z0-9-]+)?-from-?([a-z-]+)?-transportation-?([a-z0- 9-]+)?.html','index.php?filters=offers&type=$matches[1]&location=$matches[2]&transportation=$matches[3]','top'); Ale nie wiem, jak sprawić, by były opcjonalne. A także, budując reguły przepisywania dla każdego typu linku, nie wydaje mi się to wydajne, ponieważ mogę mieć o wiele więcej filtrów.


title: Problem po aktualizacji, usuwanie wtyczki

text: Obecnie edytuję tę stronę http://www.millermusicproductions.com/ i zaktualizowałem WP 3.0.1 do 3.3.1. Po aktualizacji strona jest teraz powiększona w porównaniu do tego, jak była i nie mam pojęcia dlaczego. Oto kolejna witryna z tym samym szablonem, który jest nieco pomniejszony w porównaniu. Chcę, żeby to wyglądało tak. http://www.millermusiclessons.com/ Próbuję też pozbyć się loginu w prawym górnym rogu. Wchodzę do wtyczek i dezaktywuję wtyczkę o nazwie „Zaloguj się za pomocą AJAX”, następnie odświeżam stronę i wyświetla się tylko jej nagłówek. Proszę o pomoc w pozbyciu się loginu. Opublikowałem kilka wątków na forach WP Support i nie otrzymałem żadnych odpowiedzi. Dziękuję!


title: Jak „wyrzucić” niestandardowy post, gdy jestem zalogowany jako administrator?

text: Używam wtyczki członków i mam niestandardowy typ wpisu „lista” Kiedy przechodzę do aukcji w zapleczu, mogę edytować. szybka edycja i przeglądanie. Nie ma możliwości skasowania. Jestem zalogowany jako administrator. add_action('init', 'listing_init'); function listing_init() { $labels = array( 'name' => _x('Listing', 'Ogólna nazwa typu posta'), 'singular_name' => _x('Listing', 'Pojedyncza nazwa typu posta'), 'add_new ' => _x('Dodaj nowy', 'Opis'), 'add_new_item' => __('Dodaj nowy wpis'), 'edit_item' => __('Edytuj wpis'), 'new_item' => __(' Nowa aukcja'), 'view_item' => __('Wyświetl aukcję'), 'search_items' => __('Przeszukaj aukcję'), 'not_found' => __('Nie znaleziono aukcji'), 'not_found_in_trash' => __('Nie znaleziono aukcji w Koszu'), 'parent_item_colon' => '' ); $args = array( 'labels' => $labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'show_ui_menu' => true, 'query_var' => true, 'rewrite ' => true, 'capability_type' => 'listing', 'map_meta_cap' => true, 'hierarchical' => false, 'menu_position' => 5, 'supports' => array('title','editor', 'thumbnail'), 'taksonomies' => array('category') ); register_post_type('Lista',$args); } to jest kod typu postu functions.php, którego używam. Wszystko inne działa świetnie. Wewnątrz wtyczki członków mam role dla usuwania_listy i usuwania_listy (co moim zdaniem nie jest konieczne) Jakieś pomysły na to, co robię tutaj źle?


title: Wiele plików wp-config.php w jednym katalogu domowym

text: Możliwe jest przeniesienie wp-config.php o jeden poziom katalogu w górę ze względów bezpieczeństwa, tj. do katalogu powyżej public_html (czasami nazywanego domem lub nazwą użytkownika, w zależności od hosta). „Możesz przenieść plik wp-config.php do katalogu nad instalacją WordPressa”, zgodnie z http://codex.wordpress.org/Hardening_WordPress#Securing_wp-config.php I zrobiłem to za pomocą jednego z wp witryn WP -config.php plik. Ale jak to zrobić z wieloma witrynami WP w ich własnych folderach w public_html? Czy istnieje sposób na zmianę nazwy wielu plików wp-config.php - coś takiego jak wp-config1.php i wp-config2.php itp. - w katalogu domowym dla każdej innej witryny WP? I użyj .htaccess lub innej metody, aby umożliwić każdej instalacji WP znalezienie własnego pliku wp-config.php? Myślę, że jednym z rozwiązań jest Multisite, ale w tym przypadku nie jest to możliwe.


title: Potrzebujesz pomocy w odszyfrowaniu komunikatów o błędach i ostrzeżeniach

text: Jestem stosunkowo nowym użytkownikiem Wordpress, zwykle po prostu koduję moje strony ręcznie, chociaż próbuję przejść na CMS. Zainstalowałem Wordpress na subforlderze (http://www.iss.guild.uwa.edu.au/wordpress/), aby przetestować. Od czasu do czasu otrzymywałem komunikaty ostrzegawcze jak poniżej, chociaż od dzisiaj zacząłem dostawać fatalne błędy. Według mojego administratora serwera ma zainstalowane PHP 5.2.6 i MySQL 4.1.2. Wydaje się również, że nie pomaga to, czy używam Wordpress 3.1 czy Wordpress 2.7 (który został zainstalowany przez kogoś inny jakiś czas temu i wydawał się działać) ![Zrzut ekranu z błędem krytycznym](http://i.stack. imgur.com/AnsPr.png) ![Zrzut ekranu ostrzegawczego](http://i.stack.imgur.com/BERAt.png)


title: Skrót na metaboksach

text: Jest jakiś sposób na uruchomienie skrótu znajdującego się w metaboxie? Próbuję wykonać skrót ale nic nie robi, to że jeśli kod pochodzi z edytora wordpress nie ma żadnego problemu


title: dodanie nawigacji do motywów genesis

text: Postępuję zgodnie z podanym tutaj samouczkiem, aby dodać menu nawigacyjne, ale nie jestem w stanie znaleźć zestawu #nav w moim style.css, a mój motyw to eleven40. Co musimy wymienić, aby uzyskać menu nawigacyjne?


Zwariowałem, próbując wygooglować, czym są te globalne. Co to są dozwoloneznaczniki pocztowe i dozwoloneznaczniki? Jaka jest różnica między nimi? Czy istnieje lista wszystkich WP Globals i wyjaśnienie, czym one są? Dla MCE Editor - aby umożliwić niezalogowanym użytkownikom korzystanie z list i podkreślenie + przekreślenie dodaj następujące: add_action('init', 'my_html_tags_code', 10); function my_html_tags_code() { globalne $allowedposttags, $allowedtags; //$allowedposttags["ol"] = array(); //$allowedposttags["ul"] = array(); $allowedtags["ol"] = tablica(); $allowedtags["ul"] = array(); $allowedtags["li"] = array(); $allowedtags["span"] = array( "style" => array() ); }


title: Wtyczka: Wordpress Popularne Posty > Czy można dodać niestandardowe typy postów?

text: Spróbowałem zapytać autora wtyczki i czekając na odpowiedź, pomyślałem, że spróbuję też w tym miejscu. Tak wygląda wordpress-popular-posts.php: pastebin Czy mogę tam coś zmienić, aby uwzględnić niestandardowe typy postów? Może gdzieś w okolicach linii 132, odkąd wywołuję funkcję `wpp_get_mostpopular`? Przypuszczam, że musiałbym dodać niestandardowe typy postów do listy argumentów, ale nie jestem pewien, gdzie by to było.


title: Ogranicz robota niestandardowego tylko do frontonu

text: Używam następującego niestandardowego walkera, aby ukryć strony logowania i rejestracji z mojego menu nawigacyjnego utworzonego za pomocą wp_get_nav_menu_items..... function wpse31748_exclude_menu_items( $items, $menu, $args ) { // Iteruj przez elementy do wyszukania i zniszczenia, jeśli ( is_user_logged_in() ) { $registerpage = get_page_by_title( 'Zarejestruj się' ); $loginpage = get_page_by_title( 'Zaloguj się' ); foreach ( $items as $key => $item ) { if ( $item->object_id == $registerpage->ID ){ unset( $items[$key] ); } elseif ( $item->object_id == $loginpage->ID ){ unset( $items[$key] ); } else{} } return $items; } else { return $items; } } add_filter( 'wp_get_nav_menu_items', 'wpse31748_exclude_menu_items', null, 3 ); Działa dobrze, ale wpływa również na stronę menu w desce rozdzielczej, czy istnieje sposób na ograniczenie robota indeksującego tylko do interfejsu?


title: zdobądź autora opublikowanego posta

text: Używam akcji publish_post do uruchomienia niektórych kontroli użytkownika po opublikowaniu jego postu: $author_ID = ???? add_action('publish_post', 'rhb_check_current_user', 10, $author_ID); Jak mogę uzyskać oryginalny identyfikator autora?


title: Jak uzyskać post_name w podglądzie?

text: Używam poniższego kodu w moim pliku `functions.php`, aby dołączyć niektóre JS tylko w postach, które chcę. Kod działa dobrze w przypadku opublikowanych postów i mogę wybrać konkretny post, ale jak to zrobić w przypadku postów, które nie zostały jeszcze opublikowane, na przykład w przypadku przeglądania wersji roboczej posta? globalny $post; if( is_page() || is_single() ) { switch($post->post_name) { case 'nazwa-postu-tutaj': wp_register_script('wykresy', "http://ajax.googleapis.com/ajax/libs /jquery/1.8.2/jquery.min.js", array('jquery')); wp_enqueue_script('wykresy');


title: Czy istnieje interfejs API do programowego tworzenia kategorii linków?

text: Używam `wp_insert_link` do importowania wielu linków, ale później muszę ręcznie przypisać kategorię linków. Czy istnieje odpowiednia funkcja Wordpress do tworzenia kategorii linków?