title: Jaka jest najlepsza metoda opróżniania opcji utworzonej za pomocą interfejsu Settings API?

text:
Próbuję opróżnić opcję utworzoną za pomocą interfejsu API ustawień i kończy się niepowodzeniem. `update_option ( 'moja_opcja', '' );` wydaje się nic nie robić, podczas gdy `delete_option ( 'moja_opcja' );` niszczy całą opcję powodując inne problemy. Chcę tylko opróżnić wartości i zresetować je. Naprawdę nie mam pojęcia, jak poprawnie to zaimplementować. Czy ktoś może pomóc? Nagroda za 50 punktów do zgarnięcia! <?php //Utwórz menu add_action( 'admin_menu', 'tccl_menu' ); function tccl_menu() { //add_menu_page: $page_title; $menu_title, $capability, $menu_slug, $function, $icon_url, $position add_menu_page( 'Control', 'Control', 'manage_options', 'tccl-main', 'tccl_menu_page_main', plugins_url( '/kontrola-ruchu/obrazy /wp-icon.png' ), '2.2' ); //add_submenu_page: $parent_slug, $page_title, $menu_title, $capability, $menu_slug, $function add_submenu_page( 'tccl-main', 'Domains', 'Domains', 'manage_options', 'tccl-domains', 'tccl_menu_page_domain' ); } //Funkcje wywołania zwrotnego menu do rysowania stron function tccl_menu_page_main() { ?>

Kontrola
 <form action="options.php" method="post"> <?php settings_fields( 'tccl_settings_main' ); ?> <?php do_settings_sections( 'tccl_settings_main' ); ?> <input name="Prześlij" type="prześlij" value="Zapisz zmiany" class="button-primary" /> </form>
 <?php } function tccl_menu_page_domains() { $tccl_domains = get_option ( 'tccl_settings_domains' ); if ( $_POST['trigger'] ) { $p_delete_all = $_POST['delete_all']; $p_ids = $_POST['id']; #Pobierz identyfikatory $p_deletes = $_POST['deletes']; #Pobierz usuwa if ( $p_delete_all ) { //unset( $tccl_domains ); //opcja_usuwania( 'tccl_settings_domains' ); foreach( $tccl_domains as $opcja ) { $opcja = false; } $tccl_domains = tablica (); update_option( 'tccl_settings_domains', $tccl_domains ); } elseif ( is_array( $p_ids)){ foreach ( $p_ids as $id ) { if ( $p_deletes[$id] ) { //unset( $tccl_domains[$id] ); } } } } ?>
 <?php screen_icon( 'motywy' ); ?>
Kontrola
 <form action="options.php" method="post"> <?php settings_fields( 'tccl_settings_domains' ); ?> <?php do_settings_sections( 'tccl_settings_domains' ); ?> <input name="Dodaj" type="submit" value="Dodaj domeny" class="button-primary" /> </form> <form action="" method="post"> <input type=" hidden" name="trigger" value="1">
Aktywne domeny

 <input type="checkbox" name="delete_all " value="1">	 Nazwa domeny

 <input type="pole wyboru" name="delete_all" wartość ="1">	 Nazwa domeny

 <?php print_r ( $tccl_domains ); if ( is_array( $tccl_domains ) ) { foreach ( $tccl_domains as &$value ) { echo '
<input class="large-text" type="checkbox">	' .$value['text_area'].'
'; } } else { echo '
Nie wprowadzono żadnych domen. Użyj powyższego formularza, aby dodać domeny do tej listy.
'; } ?>

 <input name="Delete" type="submit" value="Delete Domains" class="button-secondary" /> </form>
 <?php } //Ustawienia add_action( 'admin_init', 'tccl_admin_init' ); function tccl_admin_init() { // register_setting: $option_group, $option_name, $sanitize_callback register_setting( 'tccl_settings_main', 'tccl_settings_main', 'tccl_settings_main_validate' ); register_setting( 'tccl_settings_domains', 'tccl_settings_domains', 'tccl_settings_domains_validate' ); // add_settings_section: $id, $title, $callbak, $page add_settings_section( 'tccl_sections_main', 'Ustawienia główne', 'tccl_sections_main_text', 'tccl_settings_main' ); add_settings_section( 'tccl_sections_domains', 'Dodaj domeny', 'tccl_sections_main_text', 'tccl_settings_domains' ); // add_settings_field: $id, $title, $callback, $page, $section, $args add_settings_field( 'tccl_fields_main_input', 'Tu wpisz tekst...', 'tccl_fields_main_input', 'tccl_settings_main', 'tccl_); add_settings_field( 'tccl_fields_domains_input', 'Dodaj domeny do poniższej listy. Wiele domen należy oddzielić przecinkami.', 'tccl_fields_domains_input', 'tccl_settings_domains', 'tccl_sections_domains' ); } //Funkcje wywołania zwrotnego sekcji function tccl_sections_main_text() { echo '
Wprowadź swoje ustawienia dla głównych opcji w sekcji głównej...
'; } //Fieldowe funkcje zwrotne function tccl_fields_main_input() { //Pobierz wartość opcji 'text_string' z bazy danych $options = get_option( 'tccl_settings_main' ); $text_string = $options['text_string']; // Echo pola echo "<identyfikator wejściowy='ciąg_tekstowy' name='tccl_settings_main[ciąg_tekstowy]' type='tekst' wartość='$ciąg_tekstowy' />"; } function tccl_fields_domains_input() { //Pobierz wartość opcji 'text_string' z bazy danych $options = get_option( 'tccl_settings_domains' ); $obszar_tekstowy = $opcje['obszar_tekstowy']; // Echo pola echo "<textarea id='text_area' name='tccl_settings_domains[text_area]'>$text_area</textarea>"; } //Ustawienia funkcji zwrotnych (walidacja) function tccl_settings_main_validate( $input ) { $valid['text_string'] = preg_replace( '/[^a-zA-Z]/', '', $input['text_string'] ) ; if ( $valid['text_string'] != $input['text_string'] ) { //add_setting_error: $title, $id, $error_message, $class add_settings_error( 'tccl_fields_main_input', 'tccl_texterror', 'Wprowadzono nieprawidłową wartość! ', 'błąd' ); } return $prawidłowy; } function tccl_settings_domains_validate( $input ) { $options = get_option( 'tccl_settings_domains' ); $opcje[] = $wejście; zwróć $opcje; } ?>


title: Czytaj więcej, aby otworzyć link zewnętrzny

text: Chciałbym mieć niestandardowe pole w obszarze edycji postu, w którym można umieścić link zewnętrzny. Jeśli link zostanie wprowadzony do tego pola, przycisk czytaj więcej na stronie głównej otworzy zewnętrzny link, ale jeśli to pole nie jest wypełnione, użyj domyślnej funkcji czytaj więcej i otwórz post. Czy jest jakaś wtyczka do tego lub jakiś hack?


title: Tworzenie niestandardowej strony administratora do edycji widżetów

text: Zawsze istnieje niebezpieczeństwo w myśleniu, że _prawie tam_... **Cel końcowy:** Własna strona w menu administratora, gdzie mogę edytować stworzony przeze mnie widżet. **Gdzie teraz jestem:** * Zarejestrowałem niestandardowe menu * Wyświetlam aktywne kontrolki widżetów na mojej niestandardowej stronie za pomocą funkcji zatytułowanej wp_list_widget_controls z wp-admin/includes/widgets.php * Zadzwoniłem do administratora widgets javascript **Prawie istnieje_ problem** Wygląda na to, że wszystko działa. Na mojej niestandardowej stronie, kiedy edytuję niektóre wartości widżetu i klikam przycisk zapisywania, widzę dziennik konsoli z informacją: XHR zakończył ładowanie: www.example.ca/wp-admin/admin-ajax.php". Nowa wartość wygląda tak jak został zapisany w widżecie.Ale gdy przeładuję stronę - pojawia się stara wartość **Dodatkowe uwagi** * Widżet istnieje na wygląd> widżety> jakiś zarejestrowany pasek boczny * Kiedy edytuję wartości widżetu za pomocą wygląd > widżety > .. widżet działa zgodnie z oczekiwaniami * Nie dołączyłem kodu dla aktualnego widżetu, ponieważ widżet działa dobrze, gdy edytuję widżet z właściwego miejsca.**Kod** 362 add_action('admin_menu ', 'widget_menu'); 363 364 function widget_menu () { 365 add_menu_page( 'Widżet aktualności', 'Widżet aktualności', 'zarządzanie_opcjami', 'news_widget_opt_menu', 'news_widget_options', '', '6' '); 366 } 3 function news_widget_options () { 368 369 wymaga get_root_path() .'/wp-admin/includes/widgets.php'; 370 wp_enqueue_script('admin-widgety'); 371 echo wp_list_widget_controls('home_page_widgets'); 372}; Czy ktoś może mi pomóc zrobić ostatni krok (albo powiedzieć, że mam 1000 do zrobienia : ) lub zasugerować alternatywne podejście. **Edycja: Problem XY** (a) Wiem, że mogę umieścić arkusz stylów w kolejce na stronie widżetów administratora. Dlatego mogę ukrywać rzeczy i powiększać inne rzeczy ect. (b) W kodzie źródłowym html admin/widgets.php, mój kod formularza html widgetu jest duplikowany. Dlatego identyfikatory, których używam, są bezużyteczne. Potrzebuję unikalnych identyfikatorów, aby aktywować moje edytory WMD Pagedown..


title: Jak zawrzeć checkbox w formularzu zaplecza widgetu?

text: Próbuję dołączyć pole wyboru w zapleczu mojego widżetu. Ale nie mogę uzyskać wartości (włączonej lub wyłączonej) po przesłaniu jej przez użytkownika. Myślałem, że wartość będzie przechowywana w „esc_attr ( $check )” (tak jak w przypadku wprowadzania tekstu), ale nie mogę jej pobrać. Oto, co próbuję teraz: public function form($instance) { $check = isset($instance['check'])? $instance[ 'check' ] : 'off'; echo esc_attr( $check ); // Jeśli dane wejściowe to tekst, wypisuje wartość ?> <input class="widefat" id="<?php echo $this->get_field_id( 'check' ); ?>" name="<?php echo $ this->get_field_name( 'check' ); ?>" type="checkbox" /> <?php } Jak to działa? Jak uzyskać wartość pola wyboru w interfejsie użytkownika?


title: Motywy WordPress i jednostka PHP

text: Czy są jakieś przykłady użycia testów jednostkowych PHP z motywami WordPress, wydaje się, że wiele blogów na ten temat jest nieaktualnych, ponieważ podstawowe testy jednostkowe są poza trac, ale zeszłej nocy - wyciągnąłem trac i próbowałem ustawić próbkę motyw do uruchomienia testów. Nie działa cicha praca, musisz uruchomić wszystkie testy, aby przetestować swój motyw, a nawet jeśli próbujesz wymagać pliku - próbuje go wymagać przed utworzeniem instancji WordPressa i staje się gigantycznym bałaganem. W każdym razie wiem, że istnieje wtyczka do testowania jednostek tematycznych – ale to po prostu instaluje mnóstwo postów, które „próbują” i łamią twój motyw – nie testuje podstawowej logiki – zwłaszcza jeśli budujesz framework – jednostka php jest tutaj najlepsza, ponieważ możesz przetestować wszystkie różne opcje i implementacje swojego kodu. Czy jest więc jakiś sposób na uruchomienie PHPunit w motywie?


title: WordPress i TinyMCE: nie udało się załadować

text:
Jak w innych postach, staram się stworzyć niestandardową instalację WordPressa jako CMS dla mojej witryny akwarystycznej. W jednym z moich niestandardowych typów postów (`gatunek`, który wyświetla informacje o danym gatunku ryb) w ogóle nie używa standardowego edytora "Post", zamiast tego ma wiele pól w meta polach, takich jak "Genus", " Gatunek”, „Dieta”, „Zgodność” itp. W związku z tym korzystanie z wbudowanej w WordPress instalacji TinyMCE było nieco kłopotliwe. Jednak w końcu udało mi się to "działać" (patrz odpowiedź tutaj). To było kilka miesięcy temu i zapomniałem, że nigdy nie funkcjonował w 100% poprawnie: interfejs się zepsuł i wyświetlił pasek narzędzi o szerokości 200 pikseli w obszarze tekstowym 400 pikseli. Myślę, że wynika to z tego, że na stronie znajduje się wiele wystąpień paska narzędzi o różnych szerokościach (nigdy nie wymusiłem szerokości podczas inicjalizacji TinyMCE). Próbuję teraz wyrejestrować domyślną instalację TinyMCE na WordPressie, aby móc korzystać z pakietu TinyMCE jQuery zgodnie z postem Andrew Jackmana w tym wątku. **-> plik wtyczki** wp_register_script('tinymce-external', $this->plugin_url .'tiny_mce/jquery.tinymce.js', array('jquery')); wp_enqueue_script('tinymce-zewnętrzne'); wp_register_script('tinymce-external-config', $this->plugin_url .'js/tinymce-config.js', array('tinymce-external')); wp_enqueue_script('tinymce-zewnętrzna-config'); **-> tinymce-external-config.js** jQuery().ready(function() { jQuery('.editor_ui').tinymce({ // Lokalizacja skryptu TinyMCE // ---> TA POTRZEBNA LINII ZOSTAŃ ZMIENIONY, JEŚLI WTYCZKA ZMIENI NAZWĘ script_url : '/dev/wp-content/plugins/sf-species-profiles/tiny_mce/tiny_mce.js', // Opcje ogólne theme : "advanced", skin : "wp_theme", język : " pl", plugins:"tabfocus,spellchecker", tab_focus : ':prev,:next', theme_advanced_layout_manager : "SimpleLayout", theme_advanced_toolbar_location : "góra", theme_advanced_toolbar_align : "left", theme_advanced "_bold,|under1 : bullist,numlist,outdent,indent,blockquote,|,link,unlink,image,removeformat,charmap,spellcheck", //theme_advanced_buttons2 : "", //theme_advanced_buttons3 : "" // Przykładowy kod CSS treści (powinien być kodem CSS Twojej witryny ) content_css : "css/content.css", }); }); **-> obszar tekstowy**
 Rodzaj
 <textarea name="genus" class="editor_ui"><?php if(isset($genus[0])) { echo esc_attr( $rodzaj[0] ); } ?></textarea> Opis

 **-> wynikowe błędy w firebug** "NetworkError: 404 Not Found - http://www.mywebsite.com /wp-admin/langs/en.js?ver=345-20111127" -> en.js?...0111127 Nie można załadować: http://www.mywebsite.com/wp-admin//langs/en. js -> jquery...r=1.7.1 (wiersz 2) "NetworkError: 404 Not Found - http://www.mywebsite.com/wp-admin/themes/advanced/editor_template.js?ver=345-20111127 " -> editor...0111127 Nie można załadować: http://www.mywebsite.com/wp-admin//themes/advanced/editor_template.js -> jquery...r=1.7.1 (linia 2)" Błąd sieci: Nie znaleziono 404 — http://www.mywebsite.com/wp-admin/plugins/spellchecker/editor_plugin.js?ver=345-20111127" -> editor...0111127 Nie można załadować: http://www .mywebsite.com/wp-admin//plugins/spellchecker/editor_plugin.js -> jquery...r=1.7.1 (wiersz 2) "NetworkError: 404 Not Found - http://www.mywebsite.com/wp -admin/plugins/tabfocus/editor_plugin.js?ver=345- 20111127" -> editor...0111127 Nie można załadować: http://www.mywebsite.com/wp-admin//plugins/tabfocus/editor_plugin.js -> jquery...r=1.7.1 (linia 2 wygląda na to, że próbuje znaleźć wtyczki i pliki językowe TinyMCE, ale w złym katalogu i nie wiem, jak to zmienić. Czy jest to problem ze zgodnością z WordPress; czy muszę wyrejestrować istniejącą instalację TinyMCE? Próbowałem użyć `wp_deregister_script('tinymce')`(i tiny_mce), ale nic się nie zmieniło. **EDYTUJ** Używam WordPress 3.3 i wszystkie powyższe odnoszą się do obszaru administracyjnego utworzonego przeze mnie niestandardowego typu postu. Z góry dziękuję,


title: Zmodyfikuj wiadomość powiadomienia po zaktualizowaniu profilu

text:
Dodałem nowe pola na stronie profilu użytkownika. Chcę wyświetlić komunikat, który mówi: „Dobrze… albo nie” Nie mogłem znaleźć haczyka w kodeksie WordPressa. Nie chcę używać wtyczki tylko własnego kodu Chcę zmienić ten kod :

Zaktualizowany profil


title: Zaczep zdarzenie Keydown w edytorze postów TinyMCE

text: Chciałbym podłączyć zdarzenie keydown w edytorze TinyMCE na stronie administratora edycji posta. Udało mi się podpiąć edytor treści HTML za pomocą następującego kodu: jQuery('#content').keydown(function(){ alert("keydown") }); Oto moja nieudana próba podpięcia edytora TinyMCE. Problem polega na tym, że edytor nie został jeszcze uruchomiony, więc zmienna ed jest niezdefiniowana. var ed = tinyMCE.getInstanceById('tinymce'); ed.onChange.add(function(ed, l) { alert("keydown"); }); Każda pomoc byłaby bardzo mile widziana!


title: Aktualizowanie serwerów jednocześnie w klastrze sieciowym

text: Mamy dość podstawową konfigurację równoważenia obciążenia z 3 serwerami sieciowymi za systemem równoważenia obciążenia podłączonym do tego samego serwera db i wskazującym folder wp-content/uploads na udział nfs. Mamy pierwszy serwer, który rsynchuje pliki wordpress przez pozostałe 2 w zadaniu cron, aby utrzymać synchronizację serwerów (wszystkie rzeczy wp-admin są robione na pierwszym serwerze) Zastanawiam się, jaki jest najlepszy sposób na uaktualnienie całego klastra od razu przy minimalnym przestoju. Jeśli zaktualizuję wordpress na pierwszym serwerze, czy wersjonowanie bazy danych spowoduje, że pozostałe 2 serwery przestaną działać? Czy mogę po prostu zaktualizować pierwszy serwer, a następnie zsynchronizować pliki bez żadnych przestojów?


title: Używanie filtra do dodawania dodatkowych pól do comment_form()

text:
Chcę dodać pole do komentarzy i użyłem tych kodów. **functions.php** function my_fields($fields) { $fields['url2'] = '
 URL trafiony w sieci <input id="url2" name="url2" type="tekst" value="" size="30" />
'; zwróć $pola; } add_filter('comment_form_default_fields','moje_pola'); **comments.php** comment_form(); **Pytania** 1. Nie dodaje dodatkowego pola w komentarzu administratora. Czy powinno, czy nie? 2. Wydaje się, że nie oszczędza to dodatkowego pola. Próbowałem var zrzucić tablicę komentarzy. Dlaczego nie?


title: Fragmentowanie BLOGUPLOADDIR

text: Próbuję sharding BLOGUPLOADDIR, ale nie udało mi się osiągnąć sukcesu w atm. To jest domyślny: define( 'BLOGUPLOADDIR', WP_CONTENT_DIR . "/blogs.dir/{$wpdb->blogid}/files/" ); Próbuję to ustawić: if($wpdb->blogid<10){ $bloggroup = 'global'; }else{ $bloggroup = 'bloggroup'.floor($wpdb->blogid/2000+1); // 1999->1, 2000->2 } define( 'BLOGUPLOADDIR', WP_CONTENT_DIR . "/blogs.dir/{$bloggroup}/{$wpdb->blogid}/files/" ); Tak więc co 2000 blogów, grupa blogów będzie się zmieniać.. Próbowałem filtru `upload_dir`, ale muszę go wcześniej zdefiniować. Próbowałem sunrise.php, ale $ wpdb-> blogid nie jest tam zdefiniowany. Jaki jest właściwy sposób na to?


title: Zarejestruj nowego użytkownika w interfejsie

text: Mam duży formularz i kiedy użytkownik go wypełni, muszę z niego utworzyć nowego użytkownika w Wordpress. Możliwe jest tworzenie i używanie z interfejsu użytkownika i dodawanie niestandardowych informacji? Dziękuję


title: Usuń autora posta za pomocą motywu podrzędnego

text: Używam dwadzieścia dwanaście, ale nie chcę, aby autor wyświetlał się na stronach pojedynczych postów. Jak mam to zrobić bez usuwania tego z motywu nadrzędnego.


title: Taksonomia niestandardowa z tax_query

text: Stworzyłem więc niestandardowy typ taksonomii z wtyczką (CMS Press) i teraz próbuję pobrać wszystkie posty z terminami taksonomii w tej taksonomii. Moje get_posts wygląda tak: $args = Array( 'numberposts' => 5, 'offset' => 0, 'post_status' => 'publish', 'content-type' => 'my-term' ); get_posts($args); Próbowałem też: $args = Array( 'numberposts' => 5, 'offset' => 0, 'post_status' => 'publish', 'tax_query' => Array( Array ( 'taxonomy' => 'content -type' 'field' => 'slug' 'terms' => 'my-term'));get_posts($args);To działa dobrze, gdy nie używam niestandardowej taksonomii.Jeśli zmienię żądanie na: $args = Array( 'numberposts' => 5, 'offset' => 0, 'post_status' => 'publish', 'tax_query' => Array( Array ( 'taxonomy' => 'post_tags' 'field' => 'slug' 'terms' => 'some-tag'));get_posts($args);to działa.Zastanawiałem się, czy jest coś, co pomijam, co uniemożliwia odpytywanie niestandardowych taksonomii.Wszelka pomoc byłaby mile widziana.


title: Testowanie błędów create_empty_blog() przez PHPUnit + testy jednostkowe

text: Od jakiegoś czasu czytam na TDD, a teraz mam wtyczkę wielostanowiskową, aby ją „przetestować”. Na tym etapie nie jestem pewien, czy błąd dotyczy testów jednostkowych, moich testów, mojej wtyczki lub moje zrozumienie. Jest więc sporo punktów niepowodzenia! Po aktywacji wtyczki powinna zostać utworzona nowa witryna, co ma miejsce w przypadku ręcznego uruchomienia, jednak użycie w testach polecenia `create_empty_blog` kończy się zwróceniem błędu bazy danych WordPress, a nie liczby całkowitej lub „Nazwa jest już zajęta”. To samo w sobie nie jest strasznym problemem. Chciałbym jednak, aby ten utworzony blog był dostępny podczas testów, ponieważ zamierzam napisać kolejną funkcję, która będzie dodawała posty do wygenerowanej strony, więc potrzebuję `create_empty_blog`, aby zwrócić id. Wszelkie sugestie mile widziane-> https://github.com/socd-io/socd-gallery


title: Dodawanie reguł przepisywania do niestandardowego typu posta zmieszanego z taksonomią

text: Zwracam się do Ciebie, ponieważ nie mogę znaleźć żadnego rozwiązania mojego problemu. Utworzyłem 3 niestandardowe typy postów **"Actualités"** , **"Dossiers"** , **"Vidéos"** (jestem Francuzem :D) Utworzyłem 1 taksonomię: **"Thématiques"** z następujące terminy: * Santé * Géopolitique * ... **I chciałbym uzyskać takie linki _(patrz poniżej - przykład z CPT: "Dossiers" i podatek: "Santé")_ :** * www.url .com/dossiers/sante/nom-de-larticle **=>** Wyświetl posty _(single)_ * www.url.com/dossiers/sante/ **=>** Wyświetl posty typu „Dossier” " z podatkiem "Santé" _(archiwum)_ * www.url.com/dossiers/ **=>** Wyświetl wszystkie posty typu "Dossier" _(archiwum)_ * www.url.com/sante/ * *=>** Wyświetl wszystkie posty taksonomii "Santé" _(archiwum)_ I to samo dla "Video" i "Actualités". **Na razie osiągam to za pomocą nieprzepisanych adresów URL:** * www.url.com/?dossiers=nom-de-larticle * www.url.com/?post_type=dossiers&thematiques=sante * www.url.com/? post_type=dossiers * www.url.com/?thematiques=sante Jak mogę to osiągnąć, manipulując plikami functions.php? Lub dodanie reguł przepisywania? To jest mój kod dla "Dokumentacji" z niestandardowym post-typem _(Zrobiłem to samo dla "Wideo" i "Aktualności")_ : function register_cpt_dossiers() { $labels = array( 'name' => _x( 'Dossier', 'dossiers' ), 'singular_name' => _x( 'Dossier', 'dossiers' ), 'all_items' => _x( 'Tous les dossiers', 'dossiers' ), 'add_new' => _x( 'Ajouter', 'dossiers' ), 'add_new_item' => _x( 'Dodatkowe nowe dossier', 'dossiers' ), 'edit_item' => _x( 'Modifier le dossier', 'dossiers' ), 'new_item' => _x( ' Nouveau dossier', 'dossiers' ), 'view_item' => _x( 'Afficher le dossier', 'dossiers' ), 'search_items' => _x( 'Chercher dans les dossiers', 'dossiers' ), 'not_found' = > _x( 'Aucun dossier trouvé.', 'dossiers' ), 'not_found_in_trash' => _x( 'Aucun dossier trouvé dans la corbeille.', 'dossiers' ), 'parent_item_colon' => _parent(:',gazinex( :',gazinex( :',gazinex( :',gazinex) "dossier" ) , 'menu_name' => _x( 'Dossier', 'Dokumentacje' ), ); $args = array( 'labels' => $labels, 'hierarchical' => true, 'supports' => array( 'title', 'editor', 'thumbnail', 'custom-fields', 'revisions' ), 'taxonomies' => array( 'thematiques'), 'public' => true, 'show_ui' => true, 'show_in_menu' => true, 'menu_position' => 5, 'show_in_nav_menus' => true, 'publicly_queryable' => true, 'exclude_from_search' => false, 'has_archive' => 'dossiers', 'query_var' => true, 'can_export' => true, 'rewrite' => array( 'slug' => 'dossiers/% thematiques%', 'hierarchical' => true ), 'capability_type' => 'post' ); register_post_type( 'dossier', $args ); } A to jest mój kod taksonomii "Thématiques" : register_taxonomy( 'thematiques', array( 'post', 'dossiers','videos' ), array( 'rewrite' => array( 'slug' => 'dossiers ' ), 'label' => 'Thématiques', 'query_var' => true ) ); Oraz funkcja dla permalinków: function wpa_show_permalinks( $post_link, $id = 0 ){ $post = get_post($id); if ( is_object( $post ) && $post->post_type == 'dossier' ){ $terms = wp_get_object_terms( $post->ID, 'thematiques' ); if( $terms ){ return str_replace( '%thematiques%' , $terms[0]->slug , $post_link ); } } return $post_link; } add_filter( 'post_type_link', 'wpa_show_permalinks', 1, 2 ); Dzięki chłopaki !


title: dodaj GD Star Rating do komentarzy buddypress

text: Próbuję dodać GD Star Rating do komentarzy wordpress, ale mam problem z dodaniem ich do formularza komentarza. Jest wyjaśnienie tutaj, ale fragment kodu jest uszkodzony -http://www.placementedge.com/blog/gd-star-rating- comment-integration-with-wordpress-3-0/ Kod, który muszę dodać do formularza komentarza to wp_gdsr_comment_integrate_standard_rating Czy ktoś ma jakieś pomysły na to, jak to dodać i jakiego kodu użyć? Wielkie dzięki za Twoją pomoc


title: Używanie tego samego ślimaka z wieloma typami postów

text: Moje permalinki to std %postname%. Mam kilka niestandardowych typów postów, np. „dokumenty”. function docs_init() { // utwórz nową taksonomię register_taxonomy( 'docs_tax', 'docs', array( 'label' => __( 'Documentation_Tax' ), 'sort' => true, 'args' => array( ' orderby' => 'term_order' ), 'rewrite' => array( 'slug' => 'docs') ) ); } Chciałbym móc mieć zduplikowane ślimaki. Np. Chciałbym mieć ogólną stronę z ślimakiem „MyPage”, a następnie wpis typu Docs również z ślimakiem „MyPage”. Celem jest, aby użytkownicy mogli to zrobić: URL: mojawitryna.com/mojastrona ---- ogólny Adres URL strony: mojawitryna.com/dokumenty/mojastrona ---- posttype Dokumenty ...i to nie działa. Jeśli użytkownik wpisze /docs/mypage, przeglądarka przekieruje do /mypage ... chociaż w edytorze postów pokazuje, że /docs/mypage jest adresem URL. Pomyślałem, że skoro „with_front” domyślnie ma wartość true, WordPress rozróżni dwa ślimaki, przypisując „front” (tj. typ postu). Jak mogę uzyskać to, czego chcę… czy po prostu obowiązkowe jest posiadanie unikatowego ślimaki? TIA, ---JC


title: Custom Post Type z dwiema hierarchicznymi niestandardowymi taksonomiami: strategia generowania najlepszej struktury permalink

text: to jest moja sytuacja: mam niestandardowy typ posta o nazwie **struttura** (jak zakwaterowanie): function custom_post_struttura() { $labels = array( 'name' => _x( 'Strutture', 'post type general name' ) , 'singular_name' => _x( 'Struttura', 'typ posta w liczbie pojedynczej' ), 'add_new' => _x( 'Aggiungi nuova', 'book' ), 'add_new_item' => __( 'Aggiungi nuova Struttura' ) , 'edit_item' => __( 'Modyfikacja struktury' ), 'new_item' => __( 'Nuova Struttura' ), 'all_items' => __( 'Tutte le Strutture' ), 'view_item' => __( 'Vedi Struttura' ), 'search_items' => __( 'Cerca Struttura' ), 'not_found' => __( 'Nessuna Struttura trovata' ), 'not_found_in_trash' => __( 'Nessuna Struttura trovata nel cestino' ), 'parent_ => '', 'nazwa_menu' => 'Struktura' ); $args = array( 'labels' => $labels, 'description' => 'Inserisci una nuova struttura', 'public' => true, 'menu_position' => 5, 'supports' => array( 'title', 'editor', 'autor', 'thumbnail', 'excerpt', 'comments' ), 'has_archive' => true, 'hierarchical' => true, 'rewrite' => array('slug' => 'strutture/ %regione%'), 'query_var' => prawda, ); register_post_type('struttura', $args ); } add_action( 'init', 'custom_post_struttura' ); oraz niestandardową taksonomię o nazwie **regione** : function taxonomies_regione() { $labels = array( 'name' => _x( 'Regioni', 'ogólna nazwa taksonomii' ), 'singular_name' => _x( 'Regione', 'taksonomia pojedyncza nazwa' ), 'search_items' => __( 'Cerca Regione' ), 'all_items' => __( 'Tutte le Tipologie' ), 'parent_item' => __( 'Parent Regione' ), 'parent_item_colon' => __( 'Region nadrzędny:' ), 'edit_item' => __( 'Zmień region' ), 'update_item' => __( 'Dodatkowy region' ), 'add_new_item' => __( 'Dodatkowy region' ) , 'new_item_name' => __( 'Nuova Region' ), 'menu_name' => __( 'Region' ), ); $args = array( 'labels' => $labels, 'hierarchical' => true, 'public' => true, 'query_var' => true, 'rewrite' => array( 'slug' => 'struktura', 'hierarchiczny' => prawda ), ); register_taxonomy( 'region', 'struttura', $args ); } add_action( 'init', 'taksonomies_regione', 0 ); Teraz dodaję do Taksonomii **regione** te hierarchiczne kategorie: * Toskania * Florencja * Empoli * Vinci, gdzie **Toskania** jest kategorią nadrzędną, **Florencja** jest podkategorią nadrzędną, a **Empoli** / **Vinci** to podkategoria podrzędna. Chciałem uzyskać strukturę permalinka taką jak: 1. `www.example.com/tuscany` 2. `www.example.com/tuscany/florencja` 3. `www.example.com/tuscany/florence/vinci` 4 `www.example.com/tuscany/florence/vinci/postname` Dodałem więc te trzy funkcje: add_filter('rewrite_rules_array', 'mmp_rewrite_rules'); funkcja mmp_rewrite_rules($zasady) { $noweZasady = array(); $newRules['strutture/(.+)/(.+)/(.+)/(.+)/?$'] = 'index.php?struttura=$matches[4]'; $newRules['struktura/(.+)/?$'] = 'index.php?regione=$matches[1]'; return array_merge($newRules, $rules); } function filter_post_type_link($link, $post) { if ($post->post_type != 'struttura') return $link; if ($cats = get_the_terms($post->ID, 'regione')) { $link = str_replace('%regione%', get_taxonomy_parents(array_pop($cats)->term_id, 'regione', false, '/' , prawda), $link); } return $link; } add_filter('post_type_link', 'filter_post_type_link', 10, 2); function get_taxonomy_parents($id, $taxonomy, $link = false, $nicename = false, $visited = array()) { // usunięto $seperator="/" po $link, w przeciwnym razie przed nazwą posta był podwójny ukośnik w linku $łańcuch = ''; $parent = &get_term($id, $taksonomia); if (is_wp_error ($ nadrzędny)) { return $ nadrzędny; } if ($nicename) $name = $parent -> slug; w przeciwnym razie $nazwa = $rodzic -> nazwa; if ($parent -> parent && ($parent -> parent != $parent -> term_id) && !in_array($parent -> parent, $visited)) { $visited[] = $parent -> parent; $łańcuch .= get_taxonomy_parents($rodzic -> rodzic, $taksonomia, $link, $ładna nazwa, $odwiedzone); // usunięto $separator po $link $chain .= "/"; //dodaj / po każdej kategorii } if ($link) { // nic, nie działa to :( } else $chain .= $name; //nie potrzebujesz już .$separator return $chain ; } Wszystko działa, ale otrzymuję tego rodzaju permalink: 1. `www.example.com/konstrukcja/tuscany` 2. `www.example.com/strutture/tuscany/florence` 3. `www.example.com/strutture /tuscany/florence/vinci` 4. `www.example.com/strutture/tuscany/florence/vinci/postname` gdzie **strutture** to nazwa podstawowa. Chcę określić, że domyślny post **hello-world** działa. Teraz nadchodzi zabawna część. Chcę dodać kolejną taksonomię niestandardową o nazwie **tipologia** (typ) do CPT **struttura** : function taxonomies_tipologia() { $labels = array( 'name' => _x( ' Typologia', 'nazwa ogólna taksonomii' ), 'singular_name' => _x( 'Tipologia', 'nazwa taksonomiczna osob.' ), 'search_items' => __( 'Cerca Tipologia' ), 'all_items' => __( 'Typologia nadrzędna' ), 'parent_item' => __( 'Typologia nadrzędna' ), 'parent_item_colon' => __( 'Typologia nadrzędna:' ), 'edit_item' => __( 'Modifica Tipologia' ), 'update_item' => __( 'Aggiorna Tipologia' ), 'add_new_item' => __( 'Aggiungi nuova Tipologia' ), 'new_item_name' => __( 'Nuova Tipologia' ), 'menu_name' = > __( 'Typologia' ), ); $args = array( 'labels' => $etykiety, 'hierarchical' => true, 'public' => true, 'query_var' => true ); register_taxonomy( 'tipologia', 'struttura', $args ); } add_action( 'init', 'taxonomies_tipologia', 0 ); Tipologia ma dwie kategorie: * hotel * willa Teraz chcę uzyskać taki rodzaj linku bezpośredniego: 1. `www.example.com/tuscany` 2. `www.example.com/tuscany/florencja` 3. `www.example. com/tuscany/florencja/vinci` 4. `www.example.com/hotel/tuscany/florencja/vinci` 5. `www.example.com/hotel` 6. `www.example.com/hotel/tuscany/florencja /vinci/postname` Wprowadziłem więc pewne zmiany w funkcjach: W strutturze Custom Post Type modyfikuję reguły przepisywania 'rewrite' => array('slug' => 'strutture/%tipologia%/%regione%') , zmieniłem funkcję `mmp_rewrite_rules` add_filter('rewrite_rules_array', 'mmp_rewrite_rules'); funkcja mmp_rewrite_rules($zasady) { $noweZasady = array(); $newRules['strutture/(.+)/(.+)/(.+)/(.+)/?$'] = 'index.php?struttura=$matches[4]'; $newRules['struktura/(.+)/(.+)/?$'] = 'index.php?regione=$matches[2]'; $newRules['struktura/(.+)/?$'] = 'index.php?tipologia=$matches[1]'; return array_merge($newRules, $rules); } Dodałem funkcję filter_post_type_link_due($link, $post) { if ($post->post_type != 'struttura') return $link; if ($cats = get_the_terms($post->ID, 'tipologia')) { $link = str_replace('%tipologia%', get_taxonomy_parents(array_pop($cats)->term_id, 'tipologia', false, '/' , prawda), $link); } return $link; } add_filter('post_type_link', 'filter_post_type_link_due', 10, 2); Dzięki tej konfiguracji otrzymuję taką strukturę permalinków: 1. `www.example.com/regione/tuscany` 2. `www.example.com/regione/tuscany/florence` 3. `www.example.com/regione/ toskania/florencja/vinci” 4. „www.example.com/struktura/hotel/toskania/florencja/vinci” błąd 404 5. „www.example.com/hotel/toskania/florencja/vinci” błąd 404 6. „www .example.com/tipologia/hotel` 7. `www.example.com/strutture/hotel/tuscany/florence/vinci/postname` gdzie regione jest nazwą Custom Taxonomy, tipologia jest nazwą Custom Taxonomy, a strutture jest nazwą Custom Taxonomy. nazwa bazowa. Domyślna nazwa posta hello-world działa. Jeśli zmienię coś w regułę przepisywania, taką jak slugi, otrzymuję 404. Moje pytania brzmią: czy jest możliwe uzyskanie tego rodzaju struktury permalinka? 1. „www.example.com/tuscany” 2. „www.example.com/tuscany/florencja” 3. „www.example.com/tuscany/florence/vinci” 4. „www.example.com/hotel/ toskania/florencja/vinci` 5. `www.example.com/hotel` 6. `www.example.com/hotel/tuscany/florence/vinci/postname` Jak mogę usunąć nazwę bazową z CPT, CT i permalinków? Czy to właściwy sposób na uzyskanie tej struktury? Widziałem tę strategię permalink tutaj: 1. `http://www.agriturismo.net/tuscany/` 2. `http://www.agriturismo.net/tuscany/florence/` 3. `http://www. agriturismo.net/tuscany/florence/vinci/” 4. „http://www.agriturismo.net/villa/tuscany/florence/vinci/” 5. „http://www.agriturismo.net/villa” Dziękuję z góry. PS: Wchodzę na stronę permalink, aby za każdym razem przepisać kolor. Próbuję tej strategii od pięciu tygodni.


title: Jak ustrukturyzować zapytanie do bazy danych Wordpress?

text: Mam tablicę zawierającą identyfikatory wierszy, które chcę zaktualizować: $matches = array('abc123', 'def456', 'ghi789'); Wiersze z tymi identyfikatorami muszą zostać zaktualizowane, aby ich „potwierdzona” wartość została zmieniona z 0 na 1. Coś takiego: UPDATE table SET potwierdzone = 1 WHERE id = dowolna z wartości w $matches Jak mogę to osiągnąć za pomocą `$ funkcje wpdb?


title: Usuwanie starego kodu z nagłówka

text: Na naszej stronie w nagłówku znajduje się stary kod. Domyślam się, że pochodzi z wtyczki, której używaliśmy (osadzanie zawartości Scribd na stronie), ale już jej nie używamy. <script type="text/javascript" src="http://www.scribd.com/javascripts/view.js"></script> Problem polega na tym, że nie wiem, jak pozbyć się tego skryptu. Nie ma go w header.php - więc gdzie mam to zmienić?


title: Jak filtrować listę postów zaplecza pokazującą tylko posty z krótkim kodem?

text: Muszę filtrować tabele postów i stron w panelu administracyjnym według określonych skrótów. W mojej wtyczce dodałem kolumnę skrótów do widoków postów i stron, która działa jak kolumny „Kategorie” i „Tagi”, wyświetlając listę skrótów używanych w każdym poście. Teraz chcę mieć możliwość kliknięcia jednego z krótkich kodów w kolumnie i odfiltrowania listy postów lub stron tylko do tych, które używają tego skrótu. W mojej niestandardowej kolumnie wyświetlam to: `<a href="?shortcode=my-shortcode-1">[my-shortcode-1]</a>, <a href="?shortcode=my-shortcode- 2">[my-shortcode-2]</a>, ...` Potrzebuję tylko filtra, który sprawi, że `?shortcode=...` zadziała. Oto, co mam na myśli, ale muszę wiedzieć, jakiego haka mogę użyć, aby to osiągnąć: add_filter( 'manage_posts_row', 'filter_by_shortcode' ); // wymyśliłem funkcję filtrującą filter_by_shortcode(){ global $post; // Pobierz aktualny post if(!empty($_GET['shortcode']){ // Sprawdź ?shortcode=... // Sprawdź, czy podany shortcode jest używany w poście if( has_shortcode( $post->post_content , $_GET['shortcode'] ) return $post; // Zwróć wiadomość, jeśli znaleziono krótki kod // Nie zwróć nic, jeśli krótki kod nie jest używany }else{ return $post; // Zwróć wiadomość, jeśli argument ?shortcode=... nieużywane } } Czy istnieje hook, który uruchamia się dla każdego wiersza tabeli show all Posts/Pages w panelu administracyjnym?A może jest inny filtr, z którym mogę się w tym celu połączyć?


title: Jak wyświetlić obraz załącznika do posta

text: mam zamiar stworzyć pokaz slajdów przez załącznik post w single.php. używam tego kodu, ale wynik jest pusty. <?php if ( have_posts() ) while ( have_posts() ): the_post(); $args = array( 'post_type' => 'attachment', 'numberposts' => -1, 'post_parent' => $post->ID ); $załączniki = get_posts( $args ); if ( $attachments ) { foreach ( $attachments as $attachment ) { echo wp_get_attachment_image( $attachment->ID, false ); } } koniec; ?>


title: Użyj stron dla niestandardowego typu postu

text: Mam niestandardowy typ posta, który generuję w functions.php. Chciałbym, aby każdy post był stroną, a nie postem. Jak mogę to zmienić? Próbowałem zmienić 'capability_type' => 'post' na 'capability_type' => 'page' - ale to nie zadziałało. // LFIO: Niestandardowy typ wiadomości: Wyniki sprawy add_action( 'init', 'register_cpt_result' ); function register_cpt_result() { $labels = array( 'name' => _x( 'Wyniki sprawy', 'wynik' ), 'singular_name' => _x( 'Wynik', 'wynik' ), 'add_new' => _x( 'Dodaj nowy', 'result' ), 'add_new_item' => _x( 'Dodaj nowy wynik', 'result' ), 'edit_item' => _x( 'Edytuj wynik', 'result' ), 'new_item' => _x( 'Nowy wynik', 'result' ), 'view_item' => _x( 'Wyświetl wynik', 'result' ), 'search_items' => _x( 'Wyniki wyszukiwania', 'result' ), 'not_found' => _x( 'Nie znaleziono wyników sprawy', 'result' ), 'not_found_in_trash' => _x( 'Brak wyników sprawy w Koszu', 'result' ), 'parent_item_colon' => _x( 'Wynik nadrzędny:', 'wynik' ), 'menu_name' => _x( 'Wyniki sprawy', 'wynik' ), ); $args = array( 'labels' => $labels, 'hierarchical' => true, 'description' => 'Wyniki sprawy mojej firmy', 'supports' => array( 'title', 'editor', 'excerpt' ), 'public' => true, 'show_ui' => true, 'show_in_menu' => true, 'show_in_nav_menus' => true, 'publicly_queryable' => true, 'exclude_from_search' => true, 'has_archive' => prawda, 'query_var' => prawda, 'can_export' => prawda, 'rewrite' => prawda, 'capability_type' => 'post' ); register_post_type( 'wynik', $args ); }


title: Woocommerce -Jak ustawić domyślną cenę regularną produktu

text: Używam woocommerce w pracy do zamówień sprzętu, dlatego wszystkie produkty, które stworzę, będą musiały kosztować 0 GBP. Czy można ustawić domyślną wartość 0 dla pola ceny normalnej na formularzu dodawania produktu? Dzięki Jack


title: Wymuś nieudaną aktywację wtyczki

text: Piszę wtyczkę, która będzie korzystać z pól niestandardowych dodanych przez motyw. Z tego powodu byłoby idealnie, gdyby moja wtyczka nie mogła się aktywować, jeśli te pola nie istnieją. Jak mam wyświetlić błąd i wymusić niepowodzenie aktywacji?


title: Ukryj link do strony w menu głównym przed anonimowymi użytkownikami

text: Tytuł sam się wyjaśnia, szukam sposobu/wtyczki, aby ukryć link menu do określonej strony przed użytkownikami, którzy nie są zalogowani.


title: Jak dodać element checkbox do edytora załączników na przykładzie

text: Poniższy kod dodaje niestandardowe pole wejściowe do edytora załączników. Jak mogę przekonwertować wprowadzony tekst na pole wyboru i pobrać/ustawić wartość pola wyboru podczas ładowania i zapisywania? Uwaga: `"input" => "pole wyboru"` _nie_ działa :( function image_attachment_fields_to_edit($form_fields, $post) { $form_fields["imageLinksTo"] = array( "label" => __("Obraz linki do") , "input" => "text", "value" => get_post_meta($post->ID, "_imageLinksTo", true) ); return $form_fields; } function image_attachment_fields_to_save($post, $attachment) { if( isset( $attachment['imageLinksTo']) ){ update_post_meta($post['ID'], '_imageLinksTo', $attachment['imageLinksTo']); } return $post; } add_filter("attachment_fields_to_edit", "image_attachment_fields_to_edit", null , 2); add_filter ("attachment_fields_to_save", "image_attachment_fields_to_save", null, 2);


title: Używanie znacznika More w połączeniu z_fragmentem

text: Nie jestem pewien, czy to w ogóle możliwe, ale i tak pomyślałem, że zapytam. Obecnie używam niestandardowej wtyczki, która łączy się z moimi forami. Jeśli użytkownicy należą do określonej niestandardowej grupy użytkowników, mogą zobaczyć pełną treść posta („the_content”). Jeśli tak nie jest, widzą tylko pierwsze 55 słów posta („fragment”). Tutaj możesz zobaczyć skrócony kod, którego używam na stronie single.php mojego motywu: <?php // IN X USER GROUP if($customgroup==1 || // Czy są w grupie niestandardowej? $userinfo ->usergroup == 66) { // czy administrator strony? echo the_content(); } else { // Nie ma ich w grupie niestandardowej echo the_excerpt (); } ?> Jednak `the_excerpt` pozwala mi tylko pokazać pierwsze 55 słów postu członkom grupy spoza X. To, co chcę zrobić, to ustawić dokładnie tam, gdzie kończy się fragment. W ten sposób mogę kontrolować, co widzą członkowie spoza grupy X. Próbowałem użyć tagu more Wordpressa, aby wskazać, gdzie powinien się kończyć fragment, ale nie udało mi się go uruchomić. Użyłem go w połączeniu z `the_content` i `the_excerpt`, ale obydwa je ignorują. Nie wiem, co robię źle. Jeśli podchodzę do tego źle, chcę tylko pokazać cały post członkom grupy X i pokazać fragment, który oznaczyłem tagiem more, członkom grupy, którzy nie należą do grupy X. Czy ktoś ma jakieś pomysły? Dziękuję Ci!


title: Zmień bieżącą datę w polu wyjściowym na zielony lub czerwony

text: Używając niestandardowego pola „Należność”, jak zmienić bieżącą datę na zieloną lub czerwoną w zależności od tego, czy wygasła, czy nie? Czy ktoś mógłby wskazać mi właściwy kierunek? Mój klucz meta to po prostu "należy"...


title: Tekst ucięty po znaku w TinyMCE

text: Używam najnowszej wersji wordpress (v3.9.2, Taiwan Chinese Traditional) i stwierdziłem, że nie może wyświetlać tego chińskiego słowa, ale inne chińskie słowa mogą być wyświetlane normalnie. Po prostu używam tego słowa w poście, a cała treść po jego utracie (stała się pusta, to słowo też zniknęła), po zapisaniu posta w wersji roboczej. Co powinienem zrobić?


title: Czy sklep internetowy Shopp lub WP e-commerce może stworzyć coś tak rozbudowanego jak te witryny? Inne polecane rozwiązania?

text: Projekt, nad którym pracuję, będzie wymagał katalogu tak obszernego jak te strony: * http://www.ems.com * http://www.patagonia.com/us/home ale z dziwnym rozmiarem/kształtem sprzętu takiego jak jako: * http://www.spikevolleyball.com/ Zasadniczo potrzebuję pakietu e-commerce, aby obsłużyć taką liczbę produktów i odmian, a także dziwne kwestie, takie jak wysyłka sprzętu o niestandardowych rozmiarach. Czy pakiet e-commerce dla Wordpress poradzi sobie z tym, czy muszę przejść do pakietu czysto e-commerce? Jednym z wymagań dla klienta jest, aby sklep internetowy nie dotyczył tylko produktów, ale historii i rozwoju sportu. To jeden z powodów, dla których wciąż staram się znaleźć rozwiązanie dla Wordpressa, ponieważ Wordpress pozwala na inne rodzaje treści, oprócz samych produktów. Zamieściłem również posty na giełdzie stosów Pro Webmaster.


title: Słaba wydajność podczas instalacji wielostanowiskowej

text: Mam uruchomioną witrynę wielostanowiskową, a główną witryną jest mikewills.me. Dużym problemem, jaki mam, jest wydajność. Zanim cokolwiek zacznie się pojawiać, może upłynąć kilka sekund. Oczywiście jest to niedopuszczalne. Widziałem kilka wskazówek, takich jak dodawanie `<?php flush(); ?>` do nagłówka. Używam dostarczonego motywu dwadzieścia dziesięć. Back-end również działa wolno. Próbuję ustalić, czy jest to host, którego używam, czy jest to coś, co źle skonfigurowałem. Czy są jakieś dodatkowe rzeczy, które mogą być potrzebne w środowisku współdzielonego hosta?


title: Wyświetl wszystkie załączniki do postów i przypisz klasę do ostatniego obrazu?

text: Mam funkcję `get_images()`, w której chciałbym wyświetlić wszystkie załączniki graficzne dla bieżącego posta (lub strony) na liście z ostatnim obrazem mającym atrybut `class="last"`, aby oznaczyć go jako ostatni obraz na liście. Poniższy kod jest moim pierwszym krokiem do wyświetlenia załączonych obrazów, jednak jest to jedyny obraz poza pętlą, więc moje foreach jest nieudane... function get_images() { global $post; $attachment = array_values(get_children(array( 'post_parent' => $post->ID, 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => 'ASC', 'numberposts' => 1))); if ( $attachment ) { foreach($attachment as $attachmentImage) { echo '<img src="'. wp_get_attachment_url($attachmentImage->ID) .'" class="post-attachment" />'; } } }


title: Jak zrobić listę wyświetlającą podstrony najwyższego poziomu oraz wszelkie podstrony lub rodzeństwo poza bieżącą stroną

text: Powiedzmy, że wyświetlamy kilka drzew genealogicznych. Obecnie znajdujemy się na głównej stronie drzewa genealogicznego i potrzebujemy, aby nasza lista wyglądała tak: _Drzewa rodzinne_ * Kowale * Kowale * Czy Kiedy użytkownik kliknie Kowale, chcemy, aby lista wyglądała tak: _Kowale_ * The Smiths * Dave * Steve * Dolly * The Joneses * Łanie A kiedy użytkownik kliknie na Steve'a, chcemy, aby lista również wyglądała tak: _Dave Smith_ * The Smiths * Dave * Steve * Dolly * Jonesowie * Łanie Musimy więc wyświetlić listę wszystkich podstron i rodzeństwa bieżącej strony, a także rodzeństwa każdego kroku w hierarchii. Jakieś pomysły?


title: Podświetlanie wp_nav_menu() Klasa przodka bez elementów podrzędnych w strukturze nawigacji?

text: _( **Uwaga moderatora:** Pierwotnie miał tytuł "klasa przodków wp_nav_menu bez dzieci w strukturze nawigacji")_ Mam w nagłówku `wp_nav_menu`, który zawierał trzy strony. Kiedy jestem na jednej z tych stron, `li` zawierające tę stronę w menu otrzymuje klasę `.current_page_item`. Te trzy strony zawierają szablony, a te szablony zawierają niestandardowe zapytania, aby uzyskać wszystkie posty o określonym typie treści. W efekcie, postrzegane _"dzieci"_ tej strony najwyższego poziomu nie są w rzeczywistości dziećmi, to tylko typ zawartości, który powiązałem z tą stroną najwyższego poziomu za pomocą szablonu. Chciałbym, aby elementy menu najwyższego poziomu uzyskiwały klasę `'current-ancestor'`, gdy użytkownik przegląda pojedynczą stronę określonego typu postu, ponownie skojarzoną z tą stroną tylko w niestandardowym zapytaniu w pliku szablonu. Mam nadzieję, że to ma sens - jeśli nie, daj mi znać, gdzie cię zgubiłem! Bardzo doceniam każdą pomoc. __-Edytowane pod kątem szczegółów:_ Na przykład mam statyczną stronę o nazwie _Warsztaty_, która korzysta z szablonu. Jego ślimak to _warsztaty_. Szablon zawiera niestandardową funkcję get_posts i pętlę, która pobiera i wyświetla wszystkie posty o niestandardowym typie treści o nazwie _workshops_. Jeśli kliknę na tytuł jednego z tych warsztatów, przejdę do pełnej treści tego fragmentu treści. Struktura permalinku niestandardowego typu postu jest ustawiona na workshop/_postname_ , więc jak widzi użytkownik, te elementy treści są dziećmi strony Warsztaty, podczas gdy w rzeczywistości wszystkie mają jeden typ treści, ale nie są powiązane ze stroną. To właśnie tę lukę muszę skutecznie zamknąć w menu, podkreślając pozycję menu „Warsztaty” podczas przeglądania treści typu „warsztat”. Znowu, mam nadzieję, że to ma sens, myślę, że powiedziałem „warsztaty” ponad 20 razy w jednym akapicie!


title: Problemy, gdy kolidują zasady przepisywania?

text:
Czy problemem jest posiadanie niestandardowej taksonomii i niestandardowego typu postu, które używają tej samej struktury przepisywania? Mam niestandardową taksonomię `people` i niestandardowy typ posta `people_bio`. Pomysł polega na tym, że na górze strony otrzymujesz listę postów o osobie z krótką biografią. Łączę je w moim pliku szablonu `taxonomy-people.php`. Link bezpośredni to `/people/[person-slug]`. Zarówno niestandardowa taksonomia, jak i niestandardowy typ postu mają argument `rewrite` ustawiony na `array('slug' => 'people')`. Wygląda na to, że to działa: `get_term_link('seth-godin', 'people')` zwraca `/people/seth-godin/`, a dla niestandardowego typu posta z slug `seth-godin` również `get_permalink()` zwraca `/ludzie/seth-godin/`. Taksonomia jest zdefiniowana jako pierwsza i wydaje się, że „wygrywa”: na stronie `/people/[slug]` `is_tax()` jest prawdą, a `is_single()` jest fałszem. Więc to działa, ale nie czuję się z tym komfortowo. Czy ktoś jest bardziej doświadczony z silnikiem przepisywania i czy możesz mi powiedzieć, czy może to zepsuć inne rzeczy? * * * Odpowiednia część pliku wtyczki, wywoływana w akcji `init`: register_taxonomy( 'people', 'post', array( 'labels' => array( 'name' => 'People', 'singular_name' => 'Osoba', 'search_items' => 'Szukaj osób', 'popular_items' => 'Popularne osoby', 'all_items' => 'Wszyscy ludzie', 'parent_item' => null, 'parent_item_colon' => null, 'edit_item' => 'Edytuj osobę', 'update_item' => 'Aktualizuj osobę', 'add_new_item' => 'Dodaj osobę', 'new_item_name' => 'Nowa osoba', 'separate_items_with_commas' => 'Oddziel osoby przecinkami ', 'add_or_remove_items' => 'Dodaj lub usuń osoby', 'choose_from_most_used' => 'Wybierz spośród najczęściej używanych osób', ), 'public' => true, 'show_ui' => true, 'show_tagcloud' => true, 'hierarchical' => false, 'update_count_callback' => '', 'rewrite' => array( 'slug' => 'people', 'with_front' => true, ), 'query_var' => 'ludzie', 'możliwości' => array(), 'show_in_nav_menus' => prawda, ) ); register_post_type( 'people_bio', array( 'label' => 'Biografia osób', 'labels' => array( 'name' => 'Biografie', 'singular_name' => 'Biografia', 'add_new' => 'Dodaj new', 'add_new_item' => 'Dodaj nową biografię', 'edit_item' => 'Edytuj biografię', 'new_item' => 'Nowa biografia', 'view_item' => 'Wyświetl biografię', 'search_items' => ' Wyszukaj biografie', 'not_found' => 'Nie znaleziono biografii', 'not_found_in_trash' => 'Nie znaleziono biografii w koszu', 'parent_item_colon' => null, ), 'description' => 'Strony biograficzne interesujących osób', 'public' => true, 'exclude_from_search' => true, 'publicly_queryable' => true, 'show_ui' => true, 'menu_position' => null, 'menu_icon' => null, 'cap ability_type' => 'post', 'capabilities' => array(), 'hierarchical' => false, 'supports' => array( 'title', 'editor', //'autor', 'thumbnail', ' fragment', //'trackbacks', 'niestandardowe-pola', //'komentarze', //'zmiany', //'atrybuty-stron', ), 'register_meta_box_cb' => null, 'taksonomie' => array (), 'permalink_epmask' => EP_PERMALINK, //'rewrite' => false, 'rewrite' => array( 'slug' => 'people', 'with_front' => true, ), 'query_var' => true , 'can_export' => prawda, 'show_in_nav_menus' => prawda, ) ); register_taxonomy_for_object_type('ludzie', 'ludzie_bio'); _(Zawsze używam wszystkich parametrów z `register_*()`, wiele z ich wartościami domyślnymi, jako dodatkowej dokumentacji, o ile Kodeks nie jest aktualny)_ * * * Plik `taxonomy-people.php ` plik szablonu: <?php get_header(); $people_biography = get_posts(array( 'numberposts' => -1, 'post_type' => 'people_bio', 'taxonomy' => 'people', 'term' => $wp_query->get_queried_object()->slug, ) ); ?>

 <?php if ($people_biography) : foreach ($people_biography as $bio) : ?>
<?php echo get_the_title($bio->ID); ?>
 <?php echo get_the_post_thumbnail($bio->ID); echo apply_filters('the_content', $bio->post_content); ?> <?php endforeach; else: ?>
<?php esc_html_e($wp_query->get_queried_object()->nazwa); ?>
 <?php endif; ?> <?php get_template_part( 'pętla', 'archiwum' ); ?>

 <?php dynamic_sidebar('default-sidebar'); ?>

 <?php get_footer(); ?> ## Aktualizacja: Wygenerowane reguły przepisywania Dane wyjściowe mojego analizatora przepisywania wydają się mówić mi, że taksonomia „wygrywa” dla zwykłych stron taksonomii (co właśnie zauważyłem), ale niestandardowy typ postu otrzymuje wszystkie inne adresy URL (w tym drugie strony , kanały, ...). Tego się obawiałem i będę musiał to zbadać dalej. ![Przepisz reguły dla taksonomii osób i typu posta](http://i.stack.imgur.com/eOHGS.png)


title: Genesis wielu kategorii niestandardowej pętli 404 po pierwszej stronie

text: Ok, mam stronę, która pokazuje kanał postów w kategorii „wiadomości” (url to: mojadomena.com/kategoria/wiadomości ), ale klient chce, aby wyświetlała również wpisy z kategorii „informacje prasowe”. Tak więc na stronie category.php użyłem następującego kodu, myśląc, że przejdzie on przez wszystkie posty, które znajdują się w kategorii „wiadomości” lub „wypowiedzi prasowe”: ob_start(); single_cat_title(); $this_cat = ob_get_contents(); ob_end_clean(); if( $this_cat == 'Wiadomości' || $this_cat == 'Informacje prasowe' ) { remove_action( 'genesis_loop', 'genesis_do_loop' ); add_action( 'genesis_loop', 'vacation_do_custom_loop' ); } funkcja vacation_do_custom_loop() { global $wp_query; globalny $paged; // bieżąca strona z podziałem na strony global $query_args; // pobierz bieżące wp_query() args $args = array( 'category__in' => '5, 1', // próbowałem też 'category_name' => 'news, press-releases' 'posts_per_page' => 9, ' paged' => $paged // szanuj paginację ); genesis_custom_loop( wp_parse_args($args_query, $args) ); } Cóż, po kliknięciu strony 2 (np. 7), przenoszę się do 404. Myślę, że problem polega na tym, że w kategorii „wiadomości” jest tylko 1 post, a w „komunikatach prasowych” jest ich około 40. Tak więc paginacja pokazuje strony dla wszystkich ponad 40 postów, ale ponieważ jest tylko jeden post z wiadomościami, druga strona w rzeczywistości nie istnieje? Skoro URL to /category/news Wordpress tworzy paginację na podstawie liczby postów "news"? Jak mogę uruchomić paginację tutaj?


title: Pozwól użytkownikom tworzyć nowy wpis taksonomii niestandardowej z poziomu frontendu (bez tworzenia posta)

text: Stworzyłem niestandardową taksonomię o nazwie „Club” (grupa osób). Dzięki temu mogę grupować posty od współtwórców (takich jak tagi). Używam wtyczki "Quick Post Widget", aby umożliwić wprowadzanie swoich postów z frontendu. W formularzu Quick Post Widget mogą wybrać swój "Klub" (lub wprowadzić nowy). Oto moje pytanie: Jak mogę pozwolić współtwórcom po prostu wejść do nowego "Klubu" z frontendu, bez faktycznego tworzenia nowego posta. Byłaby to taka sama funkcjonalność, jak tworzenie nowego tagu z interfejsu. (tj. jedno pole wejściowe z przyciskiem „utwórz” (prześlij)). Szukałem w Internecie prostego rozwiązania, ale mi się nie udało. Mam nadzieję że możesz mi pomóc...


title: Umieszczanie niestandardowych terminów w niestandardowych meta postach

text: Próbuję wyświetlić listę niestandardowych terminów taksonomii (za pomocą get_terms) z poziomu niestandardowego kodu meta (tj. Za pomocą akcji add_meta_boxes). Otrzymuję zwrot „Nieprawidłowa taksonomia” z wywołania get_terms. Przeczytałem tyle postów na tym forum i innych na ten temat i wiem, że ma to związek z tym, że nie zarejestrowałem jeszcze taksonomii niestandardowej. A akcja init następuje po akcji add_meta_boxes. Widziałem poprawki, w których DB jest odpytywane bezpośrednio, rozwiązanie, które działałoby dla mnie. Buduję motyw dla mojego klienta i nie chcę iść tą trasą, jeśli mogę jej ominąć. Czy istnieje inny sposób na wyświetlenie niestandardowych terminów z niestandardowej meta postu? Powodem, dla którego chcę to zrobić, jest dostarczenie możliwej do zarządzania przez klienta listy sekcji, które można dodać do niestandardowego postu, wraz z wprowadzaniem tekstu powiązanego z każdą sekcją. Pomyśl o CV. Klient dodaje nowego kandydata, a kandydat może mieć dowolną liczbę sekcji w swoim CV. Mogą najpierw wybrać (z listy rozwijanej) sekcję do dodania, a następnie dodać do niej odpowiedni tekst. Z góry dziękuję.


title: dodaj kolumnę nazwy pliku do biblioteki multimediów, aby sortować według

text: Wiem, że odpowiedziałeś na to, ale jestem samoukiem wolontariuszem i nie bardzo rozumiem, gdzie to umieścić. Jeśli wejdę do edytora (motyw używany jako Asteria lite) i wstawię kod do funkcji php (na samym dole) pokaże się on jako tekst na stronie. Czy jest jakieś konkretne, że musi to zostać opublikowane. Znajduje się w pliku funkcji motywu, czy powinien znajdować się gdzieś w pliku wordpress? Naprawdę potrzebuję pomocy, ponieważ próbuję ustawić to dla AWO jako galerię adopcyjną


title: wp_list_page z czymś w rodzaju showpost

text:
Używam tego kodu <?php $children = wp_list_pages('title_li=&child_of='.$post->ID.'&echo=0'); $subpages = ($post->post_parent) ? wp_list_pages('title_li=&child_of='.$post->post_parent.'&echo=0') : wp_list_pages('title_li=&child_of='.$post->ID.'&echo=0') ; if ($dzieci) { ?>
<?php echo $dzieci; ?>
 <?php } else { ?> <?php echo $podstrony; ?> <?php } ?> Ten kod wyświetla strony potomne na stronie nadrzędnej, również jeśli nie ma potomków, wyświetla potomka rodzica (braci). Jednak muszę ograniczyć to do wyświetlania tylko 5 stron, coś takiego jak showpost=5 dla postu, nie byłem w stanie tego zrobić, jakakolwiek pomoc???


title: wp_enqueue_scripts, wp_register_scripts, wp_print_scripts: jestem zdezorientowany

text: * Trochę poczytałem na ten temat, ale im więcej czytam - tym bardziej się gubię. * Czy ktoś może mi krótko wyjaśnić, jaka jest dokładna różnica między `wp_enqueue_scripts`, `wp_register_scripts` i `wp_print_scripts`? * Na przykład mam następujący kod w moim functions.php - i działa, ale nie rozumiem, dlaczego nie mogę użyć `wp_print_scripts` dla arkuszy stylów, podczas gdy kod nadal działa, jeśli używam `wp_enqueue_scripts` dla javascript pliki: add_action('wp_print_scripts', 'add_my_js'); function add_my_js(){ if(!is_admin()){ wp_enqueue_script('default', get_bloginfo('stylesheet_directory').'/js/default.js', array('jquery')); } } add_action('wp_enqueue_scripts', 'add_my_stylesheet'); function add_my_stylesheet() { wp_register_style('default', get_bloginfo('stylesheet_url')); wp_enqueue_style( 'domyślny'); }


title: Nie można wyświetlić kategorii nadrzędnych i podrzędnych niestandardowej taksonomii

text:
Mam skonfigurowany niestandardowy typ postu z niestandardową taksonomią. W przypadku tej taksonomii niestandardowej próbuję dowiedzieć się, jak odtworzyć w niej tytuły kategorii nadrzędnej i bieżącej kategorii podrzędnej. Oto konfiguracja: prints (zarejestrowany niestandardowy typ postu) print_type (zarejestrowana taksonomia niestandardowa) * Wydruki i karty notatek (kategoria nadrzędna w taksonomii print_type) * Floral Prints (kategoria podrzędna) * Scenic Prints (kategoria podrzędna) * Notatki ( kategoria podrzędna) * Zaznaczenie (kategoria podrzędna) Na single-prints.php Chciałbym wyświetlić (indywidualnie, nie jako listę): Kategoria nadrzędna / Aktualna kategoria podrzędna / Tytuł postu Żadne z tych elementów nie musi być połączone, po prostu chcę tekst w celu wyświetlenia hierarchii. Wypróbowałem dziesiątki bitów kodu, aby wyświetlić dwa rodzaje tytułów kategorii bez powodzenia. Jestem nowy w WP i PHP i jestem bardzo sfrustrowany, ponieważ nie mogę pojąć tego, co robię, co jest złe. Oto kod strony: <?php get_header(); ?>
 <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
 <?php $kategoria = pobierz_kategorię(); echo $kategoria[0]->nazwa_kota; ?>

<?php echo get_category_parents(19, TRUE, ' / '); ?><?php tytuł_(); ?>

<?php the_fragment(); ?>
 <div id="workgrid" class="<?php the_ID(); ?>"><?php the_content(); ?>
 <?php endwhile; endif; ?>
  <?php get_sidebar('prints'); ?>


title: Klasa echa w zależności od kategorii nadrzędnej

text: To, co próbuję zrobić, to wyświetlić klasę w zależności od 3 głównych kategorii "nadrzędnych", w których została opublikowana treść, oto mój dotychczasowy kod <article class="post <?php if ( in_category( 'marzenie-to' ) ){ echo 'dreamit'; } if ( in_category( 'zbuduj-to' )){ echo 'buduj'; } if ( in_category( 'wejdź-wyjdź' )){ echo 'get-out'; } ?> "> Wiem , że robię to źle , każda pomoc byłaby niesamowita ! Dziękuję Ci!


title: Kolejne tworzenie ponad 1000 postów powoduje 404?

text: Rozwijam importera masowego. Zasadniczo robi zdjęcia i konwertuje je na posty. Każdy obraz zostanie utworzony z 10 różnymi powiązanymi postami, dlatego każdy obraz będzie reprezentował/utworzył 11 postów. Gdybym zaimportował 100 obrazów, wtyczka musiałaby utworzyć kolejno 1100 postów. Problem polega na tym, że Wordpress zgłasza w konsoli „błąd 404” podczas tworzenia postów przez wtyczkę. Oto dokładny błąd: Nie można załadować zasobu: serwer odpowiedział ze statusem 404 (Nie znaleziono) http://www.example.com/wp-admin/admin-ajax.php Dziennik błędów mówi: Błąd bazy danych WordPress MySQL serwer zniknął dla zapytania ... Wtyczka importuje najpierw obrazy, a następnie tworzy posty. To w tworzeniu postów pojawia się błąd. Należy jednak pamiętać, że błąd nie występuje, jeśli importuję mniej niż 20 obrazów. Ponieważ jest to AJAX, nie mam innych danych o błędach, które pomogłyby mi zdiagnozować problem. Ale zgaduję, że serwer jakoś zatrzymuje się w pewnym momencie, gdy jest proszony o tworzenie postów. jakieś pomysły? EDYCJA: Zgodnie z żądaniem @kaiser, oto funkcja, która tworzy post dla każdego obrazu: public function create( $posted ) { $post_ids = array(); foreach ( $posted['attachments'] as $file_id ) { $file_data = $this->get_file( $file_id ); $post = array( 'post_title' => $posted['titles'][$file_id] ? $posted['titles'][$file_id] : $file_data['name'], 'post_content' => '', 'post_type' => 'xxx', 'post_status' => 'publish', 'post_author' => get_current_user_id(), 'tax_input' => array( 'xxx_type' => array( post_type_term_id() ), 'xxx_cat' = > array( $posted['term_id'] ) ) ); // Utwórz post $post_id = wp_insert_post( $post ); $post_ids[] = $post_id; // Metadane posta formularza $metadata = xxx_metadata_defaults(); // Dołącz datę zdarzenia do tego posta $metadata[ 'event_date_meta_key' ] = date( 'Y-m-d H:i:s', strtotime( $posted['date']) ); // Dodaj meta, która określa, czy ten post jest importowany przez tę wtyczkę $metadata['xxx'] = 'yes'; // Zapisz identyfikator załącznika do późniejszego wykorzystania $metadata['xxx_id'] = $file_id; // Aktualizuj metadane foreach ( $metadata as $key => $value ) { update_post_meta( $post_id, $key, $value ); } // Ustaw plik jako miniaturę postu set_post_thumbnail( $post_id, $file_id ); // Utwórz powiązane $this->create_related( $posted['group'], $post_id, $file_data ); do_action( 'create_related_posts_complete', $post_id, $posted['term_id'], $posted['users'] ); } return $post_ids; } Poniższa linia tworzy kolejne 10 postów. // Utwórz powiązane $this->create_related( $posted['group'], $post_id, $file_data ); Nie jestem pewien, jak podzielić zapytanie, ponieważ wszystkie pliki są pobierane z formularza i tworzone jako posty jednocześnie, więc może muszę użyć `sleep()`, jak sugerował @kaiser. Ale ile czasu powinienem przeznaczyć na sen? Czy będzie to zależeć od jakiejś konfiguracji `php.ini` -- `max_execution_time`?


title: Automatycznie wstawiaj pole niestandardowe podczas publikacji niestandardowego typu postu

text: Szukałem sposobu na automatyczne wstawianie niestandardowego pola podczas publikowania niestandardowego typu postu. I wielokrotnie znalazłem to samo rozwiązanie, stąd: http://pippinspages.com/tutorials/publish-action-hook-for-custom-post-types/ Próbowałem tego i z jakiegoś powodu to po prostu nie działa dla mnie . Mam niestandardowy typ posta o nazwie sales_pages Oto mój kod: // funkcja do wykonania po opublikowaniu niestandardowego typu postu function run_when_post_published($post_ID) { // twój kod funkcji tutaj global $wpdb; if (! wp_is_post_revision ($post_ID)) { add_post_meta ($post_ID, "nazwa pola", "wartość niestandardowa", prawda); } } // zastąp {custom_post_type_name} nazwą twojego typu postu add_action('new_to_publish_sales_pages', 'run_when_post_published'); add_action('draft_to_publish_sales_pages', 'run_when_post_published'); add_action('pending_to_publish_sales_pages', 'run_when_post_published'); Czy możesz mi podpowiedzieć, co jest w tym nie tak? Potwierdziłem to pracując ze zwykłymi postami (oczywiście z haczykami do publikacji postów). Po prostu nie robi tego samego z moimi niestandardowymi typami postów. Z góry dziękuję za wszelkie rady. Pozdrawiam, Bryan


title: jak manipulować parametrami HTML za pomocą warunków PHP

text:
Cześć, używam własnego arkusza stylów, używając twittera bootstrap w wp-admin. stworzyłem własny pasek nawigacyjny, jak poniżej. add_action('admin_head', 'myNavbar'); function myNavbar(){ echo "

  HOME

WTYCZKA

 "; } jak mogę manipulować moimi znacznikami, aby utworzyć `<li class="active"> Wtyczkę </li>` kiedy jestem w `wp-admin/plugin.php` myślę, pobierając bieżącą stronę i tworząc jakąś instrukcję warunkową w PHP if(isset($_GET) == '.../plugin.php') { // zmień znacznik tutaj } nie jestem pewien, czy to jest prawidłowe podejście


title: Programowo wyłącz W3 Total Cache w środowisku programistycznym

text: W moim projekcie mam dwa środowiska: deweloperskie i produkcyjne. Chcę tylko móc dezaktywować lub wyłączyć W3TC w moim środowisku deweloperskim, ale wtyczka nie ma dla tego natywnego wsparcia. Nie mogę również znaleźć dezaktywacji podpięcia, która działa z wtyczką i ustawienie `define('WP_CACHE', false);` oparte na `HTTP_HOST` wydaje się być pominięte w `wp-config.php`. Więc na pewno już to wyszło ludziom - jakie jest rozwiązanie?


title: Właśnie dostałem e-mail z wordpressa. co to znaczy?

text: Właśnie otrzymałem ten e-mail od WordPress: Nowy pingback w poście „Skontaktuj się z nami” czeka na Twoją zgodę http://clickcomputers.org.uk/contact-us/ Witryna : Kliknij Komputery » Post Topic » Bądź kreatywny. (IP: 217.160.66.224 , kundenserver.de) URL : http://clickcomputers.org.uk/be-creative/ Fragment pingbacka: [...] Skontaktuj się z nami [...] Co to oznacza? Dziękuję Ci.


title: Dziwne problemy po odzyskaniu po naruszeniu bezpieczeństwa

text: Serwer współdzielony, którego używałem do hostowania mojej witryny WordPress, został niedawno zhakowany i wiele plików `index.php`, wtyczek i przesyłanych plików zostało usuniętych, a moje bazy danych MySQL pozostały nietknięte. Ale po przywróceniu wszystkiego z moich lokalnych kopii zapasowych mam dziwne problemy. 1. Moja strona główna http://inversekarma.in nie ładuje się w pełni - brakuje paska bocznego i stopki. Jeśli przeglądam źródło strony, kończy się w miejscu, w którym zaczyna się kod mojego paska bocznego. 2. Nie mogę zalogować się do pulpitu nawigacyjnego. Zgłasza błąd 500. Pomóż mi rozwiązać ten problem! PS: Mam innego bloga WordPress na tej samej domenie, pod adresem `http://inversekarma.in/photos`, który działa idealnie bez żadnego z powyższych problemów, po przywróceniu plików z kopii zapasowej.


title: Opublikować miniatury na pasku bocznym i stopce?

text: Na moim blogu mam kategorię o nazwie „praca” i do każdego posta przypiszę miniaturę. Ta kategoria zostanie wykluczona z nawigacji mojego bloga, ale zostanie dodana jako fałszywa strona na pasku nawigacyjnym mojej strony. Zasadniczo chcę utworzyć listę miniatur w siatce 3 x 3, które prowadzą do tej pracy, jak mam to zrobić? Nawet nie wiem od czego zacząć?! Z góry dziękuję!


title: Czy można zmienić nazwę domyślnej taksonomii „tagów postu”?

text: Zamierzam użyć domyślnej taksonomii „tagów postu”, aby zapewnić wspólny zestaw tagów dla postów i 2 niestandardowych typów postów (aby umożliwić zbieranie/agregację według tagów). Chciałbym zmienić nazwę taksonomii „tagów postu” na coś innego – na przykład „tagi ogólne” – aby była nieco jaśniejsza, zwłaszcza gdy ta taksonomia jest dołączona do innych niestandardowych typów postów. Czy jest więc jakiś sposób na zrobienie tego w Wordpressie, czy robię to za pomocą SQL. Ponadto każdy wie, czy istnieje oczekiwanie, że ta taksonomia istnieje z nane „tagami postu”


title: Brak wyróżnionego panelu obrazu w niestandardowym typie posta w Wordpress 3.2

text: Zaktualizowano do wersji 3.2 z 3.1 i utraciłem panel z polecanymi obrazami w administratorze, który działał w niestandardowym typie posta. add_action( 'init', 'create_my_post_types' ); function create_my_post_types() { register_post_type( 'header_image_gallery', array( 'labels' => array( 'name' => __( 'Obrazy w nagłówku' ), 'singular_name' => __( 'Obraz nagłówka' ), 'add_new' = > __( 'Dodaj nowy' ), 'add_new_item' => __( 'Dodaj nowy obraz nagłówka' ), 'edit' => __( 'Edytuj' ), 'edit_item' => __( 'Edytuj obraz nagłówka' ), 'new_item' => __( 'Nowy obraz nagłówka' ), 'view' => __( 'Wyświetl obrazy nagłówka' ), 'view_item' => __( 'Wyświetl obrazy nagłówka' ), 'search_items' => __( ' Wyszukaj obrazy nagłówka' ), 'not_found' => __( 'Nie znaleziono obrazów nagłówka' ), 'not_found_in_trash' => __( 'Nie znaleziono obrazów nagłówka w Koszu' ), 'parent' => __( 'Nadrzędne obrazy nagłówka' ), ), 'public' => true, 'supports' => array('title','thumbnail','r wersje”) ) ); } Miniatury postów są rejestrowane w następujący sposób: // Ten motyw używa miniatur postów add_theme_support( 'post-thumbnails', array('post', 'page') ); Uwaga: niestandardowe posty, które zostały utworzone przed aktualizacją, działają poprawnie w interfejsie użytkownika, wyświetlając ich miniatury (brakuje tylko panelu administracyjnego z polecanymi obrazami). Ponadto: poszedłem do kodeksu i wyciągnąłem przykładowy niestandardowy typ posta, zauważysz, że powinien pokazywać polecany obraz > ale też nie. add_action('init', 'codex_custom_init'); function codex_custom_init() { $labels = array( 'name' => _x('Książki', 'Ogólna nazwa typu postu'), 'singular_name' => _x('Książka', 'Pojedyncza nazwa typu postu'), 'add_new ' => _x('Dodaj Nową', 'książka'), 'add_new_item' => __('Dodaj Nową Książkę'), 'edit_item' => __('Edytuj Książkę'), 'new_item' => __(' Nowa książka'), 'all_items' => __('Wszystkie książki'), 'view_item' => __('Wyświetl książkę'), 'search_items' => __('Przeszukaj książki'), 'not_found' => __ ('Nie znaleziono książek'), 'not_found_in_trash' => __('Nie znaleziono książek w Koszu'), 'parent_item_colon' => '', 'menu_name' => 'Książki' ); $args = array( 'labels' => $labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'show_in_menu' => true, 'query_var' => true, 'rewrite ' => true, 'capability_type' => 'post', 'has_archive' => true, 'hierarchical' => false, 'menu_position' => null, 'supports' => array('title','editor', 'autor','miniaturka','fragment','komentarze') ); register_post_type('książka',$args); } Jeśli zbadam opcje ekranu, w żadnym z przykładów nie jest widoczna opcja polecanego obrazu. _*_ Odpowiedziałem na moje własne pytanie Być może w WP 3.1 nie musiałeś deklarować swojego niestandardowego typu postu podczas dodawania obsługi motywów, ale w WP 3.2 to robisz! // Ten motyw używa miniaturek postów add_theme_support( 'post-thumbnails', array('post', 'page','header_image_gallery') );


title: Wyświetlam pole autora na stronie ze szczegółami posta

text: Będąc nowicjuszem w prasie słów i php, jestem uderzony w punkcie. Próbuję wyświetlić informacje o autorze wraz z jego zdjęciem w poście i udało mi się pobrać wszystkie dane z gravatar.com i wyświetlić je z powodzeniem na pasku po prawej stronie. Obecnie to pole pojawia się na stronie internetowej, ale moim wymaganiem jest, aby było wyświetlane tylko wtedy, gdy czytelnik znajduje się na stronie szczegółów posta. Biorąc pod uwagę moją niewielką wiedzę na temat prasy słownej, wiem, że każdy post będzie odnosił się do jakiejś kategorii. Jak mogę pokazać pole autora, aby tylko opublikować stronę ze szczegółami i ukryć ją przed wszystkimi innymi miejscami. Jakakolwiek pomoc w tym zakresie będzie bardzo pomocna po prostu przy edycji dodałem następujący kod <?php $category_ids = remove_element(get_all_category_ids() „274”); if (in_category($category_ids)) { ?> ten kod nie działa, ale jeśli przekażę pojedynczy identyfikator kategorii do funkcji `in_category()` jak <?php if (in_category('8')) { ?> if block is działa dobrze. Nie mam pojęcia, co się dzieje Z góry dziękuję


title: Jak przekierować po zalogowaniu, sposób pracy?

text: Próbowałem wszystkiego: Peter's Login Redirect, Redirection, kilka niedziałających hacków javascript, routemap PHP Class (co jest naprawdę imponujące, ale nie jestem pewien, czy jest to bardzo przydatne w tym przypadku). Używam Theme My Login, ale ustawienia przekierowania po prostu nie odpowiadają. (Chociaż nadal tego potrzebujesz). Jakieś pomysły?


title: Inline-Table poniżej dwudziestu dwunastu nie działa

text:
Niedawno chciałem dodać wygodny sposób automatycznego dodawania użytkowników do strony w małych ramkach, w tym informacje i obraz. Więc skorzystałem z tego samouczka i dostosowałem kod: http://www.wpbeginner.com/wp-tutorials/how-to-display-an-author-list-with-avatars-in-wordpress-contributors-page/ Na aktywna strona, która korzysta z okropnie starego i denerwującego frameworka Pagelines, działa dobrze. Elementy układają się dokładnie tak, jak powinny. (http://www.dreadfactory.de/testseite/) Ale kiedy próbuję dodać dokładnie ten sam kod do prostej strony z motywem dwadzieściaTwelve Childtheme, układ się popsuł. To musi być jakiś problem z css TwentyTwelve, bo kiedy usunę import css TwentyTwelve, pola są w porządku (ale oczywiście reszta jest pomieszana ;) ) Możesz zobaczyć, jak kod działa w TwentyTwelve tutaj: http://it.marvin-pollock.com/test Edycja 1: Dodany kod strony Szablon strony jest jak dotąd bardzo prosty: <?php /* Nazwa szablonu: Profilseite */ ?> <?php get_header(); ?>

< współtwórcy php(); ?>

 <?php get_footer(); ?> Kod w functions.php // --- Tworzy listę użytkowników (wymaga wtyczki "user Photo") --- // // --- Aby wykluczyć zestaw profili display_name = inactive --- // function contributors () { globalny $wpdb; $authors = $wpdb->get_results("SELECT ID, user_nicename from $wpdb->users WHERE display_name <> 'admin' AND display_name <> 'inactive' ORDER BY display_name"); foreach ($authors as $author ) { echo "
"; echo "ID); echo "'>"; echo userphoto($author->ID); echo ""; echo '
'; echo "ID); echo "'>"; echo "
"; meta_autora('imię', $autora->ID); echo "
"; echo ""; echo "ID); echo "'>"; echo "
("; meta_autora('nazwisko', $autora->ID); //DO ZROBIENIA: Zmień na 'miasto' echo ")
"; echo ""; echo "
"; echo "
"; meta_autora('opis', $autora->ID); echo "
"; echo "
"; echo "ID); echo "'>"; echo "Termine i Kontakt ->"; echo ""; echo "
"; echo "
"; } }


title: Czy można zmienić źródło obrazów, które są wyświetlane po stronie administratora?

text: Wszystkie moje obrazy są w CDN. Na stronie, z której pochodzą obrazy, ale po stronie administratora pobiera je z serwera. Czy istnieje filtr lub akcja, której mogę użyć, aby zmienić źródło obrazów wyświetlanych w WYSIWYG iw sekcji administratora mediów?


title: permalink %year% wstępnie napisanych postów, które zostaną opublikowane w przyszłym roku, w tajemniczej przyszłości (*)

text: Piszę wstępnie kilka postów, które zostaną opublikowane w przyszłym roku. Moja struktura linku bezpośredniego to /%year%/%postname%/ Po ustawieniu tytułu posta link bezpośredni mówi, że będzie to http://www.amazeaweek.net/2011/spiral-out/, co odzwierciedla rok, w którym go piszę . Ale chciałbym, żeby był to http://www.amazeaweek.net/2012/spiral-out/, ponieważ zostanie opublikowany w 2012 roku. Próbowałem ustawić datę publikacji _przed_ napisaniem tytułu, ale permalink nadal mówi, że będzie być 2011, mimo że data publikacji jest wyznaczona na przyszły rok. **Jak sprawić, by link bezpośredni odzwierciedlał rok publikacji zamiast roku bieżącego?** (*) Staram się, aby tytuł mojego pytania zawierał wszystkie słowa kluczowe, których użyłem, szukając tej odpowiedzi. Po przeczytaniu notki po tej odpowiedzi dotyczącej planowania postów, zastanawiam się, czy po prostu muszę poczekać do przyszłego roku...


title: Lokalizowanie metod dla jQuery append prepend wrap parent

text:
Serializuję więc niektóre opcje w WordPressie, a następnie lokalizuję je do użycia w moim skrypcie jQuery, jednak to, co próbuję zrobić dalej, nie działa. jQuery('.advert')+ lu_ban_object.method +('
Witaj świecie
') Więc w moim db mam zserializowaną parę wartości; poniżej znajdują się dane, które są lokalizowane do użycia jako metoda wybrana przez użytkownika > s:6:"metoda";s:5:".wrap";} Zasadniczo powinno to zrobić; jQuery('.advert').wrap('
Witaj świecie
') Użytkownik może również dołączać, dołączać, zawijać itp., ale to po prostu nie działa, metody są lokalizowane i serializowane, więc powinno praca, ale tak nie jest. Próbowałem również następujących rzeczy; jQuery('.advert')lu_ban_object.method('
Witaj świecie
') jQuery('.advert')jQuery(lu_ban_object.method)('
Witaj świecie
') Jest po prostu nie działa .... każdy wie, jak to rozwiązać. czy robię to w zły sposób? Mam tylko listę na stronie ustawień i każda ma wartość dla innej metody, na przykład; <select name="lu_ban_data[metoda]" id="lu_ban_data" /> <option value=".append">Dołącz</option> <option value=".prepend">Dołącz</option> <option value=" .wrap">Wrap</option> <option value=".parent().parent().wrap">Rodzic</option> **aktualizacja: tablica var dump** (size=4) 'title' => string 'Mój niestandardowy tytuł' (length=15) 'msg' => string 'Moja wiadomość' (length=10) 'image' => string 'http://i.imgur.com/3tPjx4l.png' (length= 30) 'method' => string '.prepend' (length=8) Próbowałem rozwiązania z nawiasami, ale nadal nic, `jQuery('.advert')[lu_ban_object.method]("<div>Hello World</div> ")` Otrzymuję następujący błąd: `Uncaught TypeError: Object [object Object] nie ma metody '.prepend'` Więc dodałem symbole plus i komunikat zniknął, ale div nadal nie był dodawany do strony ` +[lu_ban_object.method]+` następujące są moje zlokalizowane dane, które są drukowane w nagłówku


title: Czy mogę stworzyć serwis społecznościowy za pomocą WordPressa i jego wtyczek?

text: Jestem całkowicie nowy w WordPressie. Mam potrzebę stworzenia strony, na której ludzie będą tworzyć społeczności i blogować. Zaprzyjaźnią się i wyślą zaproszenie do znajomych. Jest to więc w dużej mierze połączenie elementów sieci społecznościowych z elementami blogowania. Czy ktoś może zasugerować, czy powinienem wybrać WordPressa lub poszukać innej opcji, jak. ELGG.


title: Niestandardowa strona taksonomii nie działa

text:
Utworzyłem niestandardową taksonomię „gatunki zwierząt”, którą chcę odfiltrować mój niestandardowy typ postu „zwierzęta”. Pomysł polega na tym, że użytkownik może przejść do głównej strony zwierząt i odfiltrować je według kotów, psów itp. Utworzyłem stronę taksonomii-animals- animal-species.php, ale domena.com/animals/?animal- gatunek=kot (lub pies lub cokolwiek) nadal wymienia wszystkie zwierzęta, a nie tylko te, które pasują do taksonomii. Próbowałem zmienić nazwę strony taksonomii na każdą odmianę, o której myślę, ale bez powodzenia. Czy ktoś ma jakieś pomysły, jak to naprawić? TLDR: domain.com/animals/?animal-species=cat i domain.com/animals/ dają te same wyniki Kod dla strony animal-listing.php i taksonomii-animals-animal- species.php <?php $ page_link = get_permalink(); $gatunki_zwierząt = get_terms( 'gatunki-zwierząt' ); $args = tablica(); $args['post_type'] = 'zwierzę'; if ( isset( $_GET['gatunki-zwierząt'] ) ) { $args['gatunki-zwierząt'] = $_GET['gatunki-zwierząt']; $page_link = add_query_arg( 'gatunek-zwierza', $_GET['gatunek-zwierzeta'], $page_link ); } if ( is_array( $animal_species )) { echo '
'; echo '
Pokaż wszystkie zwierzęta
'; foreach ( $animal_species as $animal_species ) { echo '
slug, $page_link ) ) .'">' . $animal_species->nazwa . 's
'; } echo '
'; } ?>
 <?php $animals_per_page = 10; if( function_exists( 'ot_get_option' ) ) { $zwierzęta_na_stronę = intval(ot_get_option('zwierzęta_na_stronę')); } $args = array( 'post_type' => 'animal', 'posts_per_page' => $animals_per_page, 'paged' => $paged ); $zapytanie = nowe WP_Query( $args ); $i = 0; if ( $query->have_posts() ) { while ( $query->have_posts() ) : $query->the_post(); $i++; ?> <div class="element-zwierza <?php if ($i % 2 == 0) { echo "parzyste"; } ?>" > <?php get_template_part( 'inc/display-animal' ); ?>
 <?php endwhile; } ?>


title: Angielska wersja mojej strony pokazuje francuskie napisy

text: To jest dziwne: http://www.famille-labruyere.com/ to francuska wersja strony http://www.famille-labruyere.com/en/ jest angielska Problem polega na tym, że wersja angielska pokaż struny tematyczne w języku francuskim. Nie mam pojęcia dlaczego. Informacje : używam WPML i sieci stron internetowych z funkcjami wordpress.


title: metoda getPost() i Paginacja

text:
Tworzę powiązaną funkcję post-artykułu dla mojej witryny obsługującej wordpress. Jestem nowy w php i wordpress w obliczu jakiegoś problemu. chociaż mogę używać funkcji wordpress, aby pokazać powiązany post autora, ale ponieważ witryna zawiera artykuły autorów, którzy nie mają u nas żadnego profilu i jest wielu takich autorów, więc gdy tworzony jest nowy post dla autora, staramy się aby zapisać niestandardowe pole jako author_email. więc na tej podstawie chcemy pokazać wszystkie opublikowane posty danego autora. Próbowałem użyć metody get_posts() <?php $args = array( 'meta_key' => 'author_email', 'meta_value' => 'XYZ@XYZ .com'); $authorposts=get_posts($args); ?>
 <a href="<?php echo get_option('home'); ?>/">Strona główna » <?php kategoria_( ', ') ?> <?php if (count( $authorposts ) > 0) { foreach ( $authorposts as $post ): setup_postdata($post) ?>
 /* pokazuje tilte posta z obrazem i jego częścią */

 <?php endforeach; ?>

<?php previous_posts_link('‹ Poprzednia strona') ?>

<?php next_posts_link( 'Następna strona ›') ?>

 <?php } else { echo '
Brak artykułów tego użytkownika
'; } ?>
 pokazuje pierwsze 5 wyników i link do następnej strony, ale kiedy klikam następną stronę, pokazuje mi, że przeszedł na drugą stronę, ponieważ jest również widoczny na adresie URL, ale pokazuje to samo 5 wyników, które pokazał na pierwszej stronie. Mam pomysł, że zapytanie, które napisałem na tej samej stronie, jest wykonywane ponownie od początku, ale nie jestem pewien, jak to naprawić. ponieważ używam pól cutom, aby uzyskać posty, mogę użyć prostego zapytania, aby pobrać post na podstawie limitu lub offsetu itp. Czy ktoś może mi pomóc naprawić rzeczy lub wskazać mi, jak zrobić to we właściwy sposób z góry dzięki


title: wpdb get_var nie zwraca żadnego wyniku (zweryfikowane zapytanie mysql zwraca tylko jedną wartość)

text: Próbuję zmodyfikować wtyczkę wordpress, aby była bardziej dostosowana do naszych potrzeb. Mam niestandardowy user_meta o nazwie praktyka i oddzielamy naszych użytkowników na podstawie praktyki, więc musimy oddzielić wyniki quizu również na podstawie praktyki. Mój problem polega na tym, że nie mogę uzyskać mojego zapytania, aby zwrócić praktykę. Czy ktoś może na to spojrzeć i powiedzieć mi, co robię źle? function save_score( $json, $user_id = null, $practice = null ) { global $wpdb, $data; $db_name = $wpdb->prefiks . 'plugin_slickquiz_scores'; $dane = json_decode(stripcslashes($json) ); $zestaw = tablica(); $now = data( 'Y-m-d H:i:s' ); $user_id = $user_id ? $user_id : get_current_user_id(); $practiceKey = 'użytkownik_practice'; // $practice = $wpdb->get_results( "SELECT meta_value FROM $usrmeta WHERE user_id = $user_id AND meta_key = 'user_practice'" ); // $poziomusr = $poziomusr ? $usrlevel : $wpdb->get_var( "SELECT meta_value FROM $usrmeta WHERE user_id = '".$user_id."' AND meta_key = user_practice_level" ); $userMeta = $wpdb->prefiks . `meta użytkownika`; $sql = $wpdb->prepare( "SELECT meta_value FROM %s WHERE user_id = %d AND meta_key = %d",$userMeta,$user_id,$practiceKey ); $praktyka = $wpdb->get_var($sql); $set['name'] = $data->name; $set['score'] = $data->score; $set['quiz_id'] = $data->quiz_id; //$set['utworzonyBy'] = $user_id; //$set['DataUtworzenia'] = $teraz; $set['usr'] = $user_id; $set['usr_practice'] = $praktyka; $wpdb->insert($db_name, $set); } } } Wszystko jest w porządku, z wyjątkiem $practice, która nie umieszcza wartości. Pomoc?


title: Jak zaktualizować niestandardowe rozmiary obrazów?

text: Dodałem wiele niestandardowych rozmiarów obrazów za pomocą funkcji `add_image_size`. Problem polega na tym, że kiedy muszę zaktualizować proporcje tych rozmiarów, zmieniony rozmiar nie będzie obowiązywał. Domyślam się, że wordpress wstawia te rozmiary do bazy danych i nie aktualizuje ich po zmianie kodu. Jak mogę zaktualizować rozmiar obrazu?


title: Jak dodać php w jquery

text: Chcę dodać kod php w ramach jquery. Wiem, że plik nie może zostać zapisany jako plik js, ale musi zostać zapisany jako plik php, aby wykonać kod php. Jeśli zapiszemy go jako plik php, to również nie będzie mógł być umieszczony w kolejce w function.php. jQuery(document).ready(function() { jQuery('#a, #b').change(function () { var $this = jQuery(this), // Uzyskaj uchwyt pola wyboru, które właśnie kliknęliśmy. $ a = jQuery('#a'), $b = jQuery('#b'), $c = jQuery('#c'), // Pobierz uchwyt do pola tekstowego $d = jQuery('#d' ), // Pobierz uchwyt do pola tekstowego $e = jQuery('#e'), // Pobierz uchwyt do pola tekstowego. $f = jQuery('#f'), // Pobierz uchwyt do jednego z nasze wartości domyślne. $g = jQuery('#g'); // Uzyskaj uchwyt jednej z naszych wartości domyślnych. if ($this.attr('id') == 'a' && $this.is(' :checked')) { // Kliknięcie pola a doda zawartość cif i umieści ją w e // Odznaczy również pole b. $e.val( <?php echo stripslashes(get_option('m') ); ?> ); $b.removeAttr('checked'); } else if ($this.attr('id') == 'b' && $this.is(':checked')) { // Kliknięcie checkbox b doda zawartość d i g oraz umieść go w e // To również usunie zaznaczenie pola wyboru a. $e.val( <?php echo stripslashes(get_option('m')); ?> ); $a.removeAttr('zaznaczone'); } else { $e.val(''); } }); }); Jak więc dodać php do mojego jquery i zintegrować go z moim plikiem motywu function.php. Należy również zauważyć, że echo php zwróci kod javascript, więc będzie możliwe, że ten kod zostanie dodany jako tekst, a nie echo jako kod wykonywany. Proszę pomóż.


title: Jak dodać jquery do mojej niestandardowej wtyczki wp typu post

text: Chcę dołączyć jquery do mojej wtyczki typu wordpress, którą utworzyłem. mam dwie wątpliwości ,,, 1. Skrypt jquery będzie działał tylko z opcjami widżetu (tj.) Pasek boczny. Więc kiedy używam opcji widgetu, skrypt jquery musi działać. używam skryptu do przesuwania mojej niestandardowej zawartości posta. więc będzie musiał działać tylko na sidebarach? 2. Jak wyświetlić zawartość pola w widżetach? Czy ktoś może mi zasugerować. Dziękuję .


title: Ręczna aktualizacja bazy danych Wordpress?

text: Mam wielostanowiskowy WP i próbuję teraz zaktualizować mój WP do najnowszej wersji. W panelu administracyjnym WP znajduje się strona aktualizacji sieciowej pod adresem: * Aktualizacje > Dostępne aktualizacje _(.../wp-admin/network/update-core.php)_ Udało mi się nacisnąć `[Aktualizuj teraz ]`. Następnie zaktualizował BAZĘ KODU. Jak dotąd ok. Następnie muszę ponownie zaktualizować **BAZA DANYCH** dla sieci, jak pokazano w: * Aktualizacje > Aktualizuj sieć _(.../wp-admin/network/upgrade.php)_ Potem krytycznie NIEUDANY. Pokazuje: Ostrzeżenie! Problem z aktualizacją http://www.example.com/site1. Twój serwer może nie być w stanie połączyć się z działającymi na nim witrynami. Komunikat o błędzie: Certyfikat równorzędny nie może być uwierzytelniony za pomocą znanych certyfikatów CA W tym poście nie będę pytał "jak rozwiązać ten" konkretny problem. _(Pytam "dlaczego/jak" w innym poście)_ Teraz, alternatywnie, moje kolejne pytanie brzmiałoby: * JAK **RĘCZNIE UAKTUALNIĆ BAZĘ DANYCH WP** ? _(Ponieważ możemy ręcznie uaktualnić CODEBASE, pokazano tutaj)_


title: Błąd nawigacji

text: Zasadniczo mam obrazek do nagłówka i zmieniłem link za nim, aby przejść do głównej witryny i planowałem zrobić opcję aktualności w menu, aby link do strony głównej bloga, po zmianie linku obrazu już nie miał link do głównej strony bloga, który z tego powodu stworzył dodatkową opcję menu o nazwie "Strona główna", która prowadzi do głównej strony bloga, ale nie mogę dowiedzieć się, gdzie ma to zmienić, ponieważ nie ma jej w menu z resztą mojej nawigacji guziki. Krótko mówiąc, jak zmienić stronę główną, aby nazywała się „Aktualnościami” i miała inne miejsce w menu? Jeśli chcesz zobaczyć bloga, aby zobaczyć, o co mi chodzi, to jest na blog.lendfair.co.uk. http://wordpress.org/themes/constructor/


title: Dlaczego obrazy się nie wyświetlają?

text: Serwer: IIS 6 WordPress wersja 3.1.1 Wiele witryn przy użyciu podfolderów Mogę przesłać obrazy na serwer, ale miniatury i obrazy w pełnym rozmiarze nie są wyświetlane. Jeśli spróbuję edytować obraz, wyświetli się podgląd. Plik istnieje w blogs.dir. Używam ISAPI Rewrite, aby utworzyć plik httpd.conf, który zawiera blok kodu wymieniony w obszarze Przykład podfolderu na stronie Tworzenie sieci w Kodeksie. WordPress twierdzi, że plik jest tutaj: http://blogs.nvcc.edu/test/files/2011/04/facebook6.jpg. Aktualna lokalizacja jest tutaj: http://blogs.nvcc.edu/wp-content/blogs.dir/32/files/2011/04/facebook6.jpg Tyle wskazówek... Po prostu nie mogę tego poskładać. Każda pomoc jest bardzo ceniona --Damon


title: Wada wydajności drugiej instalacji zamiast funkcji wielostanowiskowej?

text: Czy jest jakaś (wydajna) wada, gdy uruchamiam dwie instalacje wordpress zamiast korzystać z funkcji multisite? Moje pytanie dotyczy tylko różnicy multisite/dwie instalacje. Zdaję sobie sprawę, że będzie większe obciążenie itp. ### Kilka wyjaśnień (w razie potrzeby) Prowadzę prywatnego bloga na vhoście. Chcę uruchomić inną instancję Wordpress na tym samym hoście. Obie strony są od siebie całkowicie niezależne - czyli różne motywy, wtyczki itp. Prywatny blog jest przeznaczony dla jednego użytkownika. Nowa strona może mieć wielu użytkowników i przejdzie na jednego vhosta, gdy odniesie wystarczający sukces.


title: Wymagana funkcja AJAX (przełącz tekst)

text: Szukam funkcji, która będzie przełączać tekst dokładnie tak, jak pokazano po naciśnięciu przycisku „Telefon” na tej stronie. Każda pomoc byłaby bardzo mile widziana.


title: Pokaż taksonomie z określonego CPT

text:
Chcę pokazać prostą listę taksonomii związanych z moim CPT. Taksonomie to „umiejętności”. Mam następujący kod:
Umiejętności
 <?php $taxonomy = 'umiejętności'; $taxonomy_terms = get_terms($taksonomia); foreach ($taxonomy_terms as $term) { echo '~ '.$term->nazwa .'
'; } ?> Ale wypluwa WSZYSTKIE umiejętności dodane do tego CPT, a nie tylko te wybrane. Uważam, że kod taksonomii jest poprawny w pliku funkcji, ponieważ na moim listingu CPT w dashboardzie pokazuje poprawnie wybrane umiejętności związane z odpowiednim postem. Wszelka pomoc jest bardzo ceniona!


title: Pokaż treść tylko wtedy, gdy bieżąca strona NIE jest jednym z 2 szablonów stron

text: Używam tego warunkowego wyrażenia `if` do pokazywania zawartości tylko wtedy, gdy bieżąca strona NIE używa określonego szablonu strony; if (! is_page_template('template-custom.php')) { <!-- pokaż zawartość --> }, która działa poprawnie. Dopiero teraz muszę zmienić oświadczenie, aby pokazać zawartość, jeśli bieżąca strona NIE używa jednego z 2 szablonów (więc jeśli bieżąca strona używa `template-custom.php` lub `template-custom2.php` NIE pokazuj treści) . Próbowałem tego; if (! is_page_template('template-custom.php') || is_page_template('template-custom2.php')) { <!-- pokaż trochę treści --> } i to; if (! is_page_template('template-custom.php') || ! is_page_template('template-custom2.php')) { <!-- pokaż jakąś zawartość --> } ale bez problemu. Jakieś sugestie?


title: Niestandardowy formularz rejestracyjny z walidacją

text:
Próbuję stworzyć niestandardowy modalny formularz rejestracyjny, ale mam trudności z jego walidacją. Zasadniczo to, co udało mi się zrobić, to użyć CSS3 do walidacji pól w oparciu o znaczniki `pattern="..."` lub `required` używane w znacznikach `<input>`. Ta walidacja obejmuje proste rzeczy, takie jak sprawdzanie min. znaki i składnia adresu e-mail. Jednak to, czego brakuje i jest bardzo ważne, to sposób, w jaki formularz sprawdzi się ponownie w bazie danych, aby sprawdzić, czy adres e-mail, na który chce się zarejestrować nowy użytkownik, jest już zarejestrowany w witrynie... a jeśli tak, wywołaj `< i class="icon-attention invalid"></i>` aby wyświetlić i, jeśli to możliwe, wyłączyć przycisk przesyłania.

Załóż nowe konto
 <form enctype="multipart/form-data" method="post" class="frm-show-form" id="form_registration">
 <input type="hidden" name="frm_action" value="create"> <input type="hidden" name="form_id" value="10"> <input type="hidden" name="form_key" value="rejestracja">
 <input type="text" id="field_first_name" class="input" name="item_meta[85]" value="" placeholder="Imię" wymagane>

 <input type="text" id="field_last_name" class="input" name="item_meta [86]" value="" placeholder="Nazwisko" wymagane>

 <input type="email" id="field_email_address" class="input „ name="item_meta[87]" value="" placeholder="Adres e-mail" wymagany>

 <input type="password" id="field_password" class="input" name="item_meta[88]" value="" placeholder="Hasło" pattern=". {6,}" wymagany>
 <input type="hidden" id= "field_r5tog4" name="item_meta[89]" value="" /> <input type="hidden" name="item_key" value="" /> <input type="hidden" name="frm_register[username]" value="-1" /> <input type="ukryty" name="frm_register[email]" value="87" />
 <input type="prześlij" value="Register" formnovalidate="formnovalidate" class="button-full"> </form>

 Czy jest tu jakiś skrypt PHP, który może pomóc w walidacji, lub czy cały formularz jest zły? Próbowałem to przetestować i rejestracja użytkownika działa, ale jeśli wiadomość e-mail zostanie zabrana, strona po prostu się odświeży bez rejestrowania czegokolwiek. Jeśli używany jest nowy poprawny adres e-mail, rejestracja działa.


title: Jak zarejestrować typ posta, aby mieć stronę archiwum, ale nie mam pojedynczych stron?

text: Myślę, że pytanie jest proste. Chcę mieć stronę archiwum, ale chcę, żeby zniknęły pojedyncze strony. Czy istnieje sposób na niestandardowe opcje typu postu?


title: Filtruj posty za pomocą meta_query NOT IN, w których wartość ma wiele wartości

text: Chciałbym użyć `meta_key` do przechowywania wielu wartości w tym kluczu. Następnie chciałbym odfiltrować posty, które nie zawierają określonej wartości w kluczu. Innymi słowy, po prostu pokaż posty, które nie zawierają określonej wartości. Nie wydaje się to jednak możliwe. Piszę to pytanie tutaj, aby zobaczyć, czy ktoś doszedł do tego samego wniosku, czy po prostu czegoś brakuje. Oto kod, którego użyłem: // Wartości w kluczu "_no_interest" to: 1,2,3 add_action( 'pre_get_posts', 'custom_pre_query' ); function custom_pre_query( $query ) { if( $query->is_main_query() && !is_admin() && $query->is_post_type_archive( 'my_custom_post_type' ) ) { $meta_query = array( array( 'key' => '_no_interest', 'wartość' => '3', 'porównaj' => 'NIE W' ) ); $query->set( 'meta_zapytanie', $meta_zapytanie ); $query->set( 'posts_per_page', -1 ); $query->set( 'post_status', 'opublikuj' ); $query->set( 'zamówienie', 'data' ); } } To nie zadziała i nie zadziała, jeśli użyję operatora `'!='`. Jednakże, jeśli ustawię Compare na `'IN'` lub `'='`, to zadziała. Czy ktoś może to potwierdzić, czy czegoś tu brakuje?


title: Dodać niestandardowy rozmiar przesyłanego obrazu i wybrać go domyślnie?

text: Jak mogę dodać niestandardowy rozmiar przesyłanego obrazu o szerokości 550px i ustawić go domyślnie na stronie Dodaj multimedia? Obecnie dostępne są 4 rozmiary: „Miniatura”, „Średni”, „Duży” i „Pełny rozmiar”. Opcja „Pełny rozmiar” jest domyślnie zaznaczona. Czy ktoś zna działające rozwiązanie tego problemu?


title: Przetłumacz tylko motyw

text: Myślę, że stracę przez to włosy... Oto moja sytuacja: * Mam WP MU działający na moim serwerze * Mam kilka stron w języku angielskim Teraz chcę dodać blog w innym języku w ramach tej samej instalacji WP , który będzie używał motywu dla dwudziestu czternastu dzieci, ale chcę, żeby wszystko inne pozostało w języku angielskim. Pobrałem zarówno globalne tłumaczenia WP, jak i 2014. Próbowałem umieścić jeden lub oba z nich w moim functions.php: add_action('after_setup_theme', 'my_theme_setup'); function my_theme_setup(){ load_theme_textdomain( 'nwnsablog', get_template_directory() . '/języki'); } add_filter( 'locale', 'moj_motyw_zlokalizowany' ); function my_theme_localized( $locale ) { return 'sk_SK'; } Umieściłem te pliki: `sk_SK.mo, sk_SK.po, [nazwa motywu]-sk_SK.po, [nazwa motywu]-sk_SK.mo` w folderze `języki` w moim katalogu głównym motywu. Pierwsze dwa umieściłem również w folderze `languages` wewnątrz `wp-content`. W tym momencie wszystko jest nadal po angielsku. Jeśli zmienię linię `define('WPLANG', 'sk_SK');` w wp-config, większość ciągów jest tłumaczona, ale tłumaczy je również poza motyw, czego nie chcę. Mogłem dojść do punktu, w którym przetłumaczona została inna część ciągów (zgaduję, że były one specyficzne dla tematu), ale nie mogę tego odtworzyć. Zresztą nie byłoby to zbyt przydatne, bo to tylko połowiczne tłumaczenie. Każdy może pomóc?


title: Jak podzielić wyniki wyszukiwania na strony dla niestandardowych typów postów?

text: Mam niestandardowy typ posta o nazwie „samochody”, który przechowuje kilka niestandardowych pól wraz ze standardowymi polami tytułu/opisu. Potrzebuję, aby użytkownicy mogli przeszukiwać CPT na podstawie niestandardowych pól odpowiadających kryteriom użytkownika. Wymyśliłem tę część i działa, ale problemem jest paginacja. Zorientowałem się, jak podzielić CPT na strony na podstawie kodu, który znalazłem w Google, i to działa, ale kiedy opuścisz stronę 1, nie masz już danych wyszukiwania przesłanych z formularzem. Muszę tylko wiedzieć, jak mam to przechowywać lub przekazać dalej. W zwykłym PHP używałbym sesji do przechowywania danych, ale powiedziano mi, żebym tego nie robił z Wordpressem. Jaka jest więc najlepsza opcja? Powiedziano mi, że Transients są wersją sesji WP, ale nie jestem pewien, jak efektywnie z nich korzystać i jak zachować je osobno dla każdego użytkownika. Nie proszę nikogo o napisanie tego dla mnie — potrzebuję tylko pomocy w zrozumieniu najlepszego pomysłu na to.


title: jQuery nie działa w backendzie widżetów

text: Stworzyłem widget, który powinien wykorzystywać jQuery do przełączania między dwoma widokami i zaimplementować selektor daty jQuery UI. Zastanawiałem się, dlaczego mój kod jQuery nie działa, ponieważ zauważyłem, że nie działa też selektor dat. Konsola nie zgłasza błędów ani ostrzeżeń. To jest mój kod wewnątrz klasy widżetu: function form($instance) { wp_enqueue_script('jquery-datepicker', get_bloginfo('template_url').'/styles/jquery-ui-1.10.4.custom.min', array( „jquery”, „jquery-ui-core”)); wp_enqueue_style('jquery.ui.theme', get_bloginfo('template_url').'/styles/jquery-ui.css'); } Czy jest jakiś znany problem? Czy muszę wziąć coś pod uwagę? **EDYTUJ** A to jest w głównym skrypcie backendu: $(document).ready(function() { $('#widget-so_calendar_excerpt-range_from').each(function() { console.log(this); $(this).datepicker({dateFormat: 'dd.mm.rrrr'}); }); }); Dzieje się tu coś dość dziwnego. Po ponownym załadowaniu panelu administracyjnego za każdym razem, gdy zmienia się dziennik konsoli. Wygląda to tak (każda linia jedna strona przeładowana): [Dziennik] <input class="widefat hasDatepicker" id="widget-so_calendar_excerpt-range_from" name="widget-so_calendar_excerpt[range_from]" type=" text"> (backend.js, wiersz 28) [Dziennik] input#widget-so_calendar_excerpt-range_from.widefat (backend.js, wiersz 28) [Dziennik] <input class="widefat hasDatepicker" id="widget- so_calendar_excerpt-range_from" name="widget-so_calendar_excerpt[range_from]" type="text"> (backend.js, wiersz 28) [Dziennik] input#widget-so_calendar_excerpt-range_from.widefat (backend.js, wiersz 28) [Log] <input class="widefat hasDatepicker" id="widget-so_calendar_excerpt-range_from" name="widget-so_calendar_excerpt[range_from]" type="text"> (backend.js, linia 28) [Log] input#widget-so_calendar_excerpt-range_from.widefat (backend.js, wiersz 28) W DOM nigdy nie jest dodawana nowa klasa `hasDatepicker`.


title: Zmień adres URL wylogowania administratora

text: Moja witryna używa krótkiego, skróconego adresu URL. Działa to na wszystkich niestandardowych stronach tematycznych. Jedynym problemem jest to, że kiedy wyloguję się z admina, przekierowuje on do długiego adresu URL, który następnie wyświetla 404. Moje ustawienia ogólne (których nie mogę zmienić) to: Adres WordPress (URL): Długi adres URL Adres strony (URL): Krótki adres URL Wygląda na to, że link do wylogowania jest generowany z wp-includes/general-template.php, ale Nienawidzę edytować podstawowych, niemotywowych plików WordPress. Wszelkie pomysły, jak rozwiązać ten problem z wylogowaniem 404, są bardzo mile widziane.