title: Błąd Wp_editor z foreach()?

text: W profilu użytkownika udostępniam pewne `wp_editor()`, aby użytkownik mógł wstawić dodatkowe informacje, w których problem wystąpi foreach ($warunek jako $b) { $check = $b.$lang; ?> <div id="tabs-<?php echo $i ?>"> <?php wp_editor(get_the_author_meta($b . $lang, $profile_id), $check, $settings = array('textarea_name' => $ b. $lang, 'textarea_rows' => 10)); ?> </div> <?php Używam tabulatora do przełączania się między tymi `wp_editor()`, problem polega na tym, że `'textarea_rows' => 10` nie dotyczy wszystkich `wp_editor()`, dotyczy tylko pierwszy edytor() .W badaniach dowiedziałem się, że ten błąd po prostu występuje, gdy używam `foreach` z `wp_editor()` do tworzenia edytora, jeśli robię to ręcznie, jak <?php wp_editor('', 'test1', $ ustawienia = array('textarea_rows' => 10)); wp_editor('', 'test2', $settings = array('textarea_rows' => 5)); ?> wtedy `wp_editor` działa normalnie. Proszę o pomoc, dlaczego `textarea_rows` nie działa poprawnie podczas używania `foreach` ?


title: Pole niestandardowe do roli?

text: Czy można dodać niestandardowe pole do niestandardowej roli? Załóżmy, że chcę tworzyć role reprezentujące poziom członkostwa i dodać do nich opcje rozliczeniowe. Wyglądałoby to tak: Poziom członkostwa (niestandardowa rola) | Opcje rozliczeniowe ------------------------------------------------ ----------- Darmowe | Zerowy podstawowy | Miesięczny, Kwartalny, Roczny Pro | Rocznie, co dwa lata To, co chcę osiągnąć, to stworzenie poziomu członkostwa (roli), a następnie oprócz dołączenia do niego możliwości, chcę przechowywać dodatkowe niestandardowe dane, na których mogę zbudować pewną logikę biznesową. Obiekt roli będzie wyglądał tak: Rola |- Możliwości (tablica) |- Pola niestandardowe (tablica) |- Rozliczenia (pojedynczy ciąg) |- Opcje aktualizacji (pojedynczy ciąg) Czy jest to możliwe w Wordpressie? Czy patrzę w złym kierunku i należy to zrobić w inny sposób? Z góry dziękuję


title: Korzystanie z "Authy Two Factor Authentication" na niestandardowej stronie logowania

text: Stworzyłem niestandardową stronę logowania (zamiast wp-login, które mamy w wordpressie) i chcę tam zintegrować Authy, szukałem wszędzie, ale nie mogłem znaleźć żadnych odpowiedzi. Stworzyłem niestandardowy formularz i użyłem hooka `add_action( 'after_setup_theme', 'custom_login' );` i stamtąd sprawdzam poświadczenia użytkownika, coś takiego: `$creds = array(); $creds['user_login'] = $nazwa użytkownika; $creds['user_password'] = $_POST['login_password']; $creds['pamiętaj'] = prawda; $ user_validate = wp_signon ( $ creds, false ); if (!is_wp_error($user_validate)){ header('Lokalizacja: '.home_url()); Wyjście(); }` jeśli poświadczenia użytkownika są prawidłowe, użytkownik jest przekierowywany na stronę główną również będąc zalogowanym. Mam tutaj dwa pytania: 1. Próbowałem włączyć Authy dla mojego profilu z wp-admin, próbowałem się wtedy zalogować i poprosiłem o klucz Authy, który otrzymałem jako SMS, ale nie byłem zalogowany, zamiast tego byłem przekierowanie na adres URL strony domowej bez logowania. Jak to naprawić? 2. Jak zezwolić użytkownikowi na włączenie Authy z dowolnego niestandardowego szablonu (nie przez wp-login).? Jestem nowy w wordpressie, byłbym wdzięczny, gdyby ktoś wskazał mi właściwy kierunek. Dziękuję.


title: Jak wygenerować listę stron podrzędnych i wykorzystać niektóre z ich niestandardowych pól?

text: Mam następującą strukturę strony: -Strona główna -Samochody -Volvo 640 - Zdjęcia - Informacje -Porsche 911 - Zdjęcia - Informacje Chciałbym wygenerować listę samochodów na stronie Samochody wszystkich samochodów (które są stronami podrzędnymi Samochody). Jak mam to zrobić? Lista jest w zasadzie podmenu, które powinno pokazywać wszystkie samochody w kolejności alfabetycznej (uwaga, nie potrzebuję linków do „wnuków” – fotki, informacje). Muszę również pobrać dane pola niestandardowego z każdej strony samochodu i umieścić je obok linku do strony... czy to możliwe?


title: Zamieszanie związane z dodawaniem funkcji meta do roli po zarejestrowaniu niestandardowego typu postu z odpowiednim parametrem 'capability_type'

text: Pomyliłem się z parametrem 'capability_type' typu Custom Post Type (CPT) i dodawaniem wygenerowanych możliwości do roli. Więc mam CPT o nazwie 'external_role' zarejestrowany w następujący sposób: add_action('init', 'external_roles_post_type_init'); function external_roles_post_type_init() { $labels = array( 'name' => _x('Role zewnętrzne', 'nazwa ogólna typu posta'), 'singular_name' => _x('rola zewnętrzna', 'nazwa osobliwa typu posta'), 'add_new' => _x('Dodaj nową', 'rola zewnętrzna'), 'add_new_item' => __('Dodaj nową rolę zewnętrzną'), 'edit_item' => __('Edytuj rolę zewnętrzną'), 'new_item' => __('Nowa rola zewnętrzna'), 'view_item' => __('Wyświetl rolę zewnętrzną'), 'search_items' => __('Wyszukaj role zewnętrzne'), 'not_found' => __('Nie znaleziono pracy '), 'not_found_in_trash' => __('Nie znaleziono pracy w Koszu'), 'parent_item_colon' => '' ); $args = array( 'labels' => $labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'has_archive' => 'past-external-roles', 'rewrite' => array('slug' => 'external-roles','with_front' => false), 'query_var' => true, 'capability_type' => array('external_role', 'external_roles'), 'map_meta_cap' = > true, 'hierarchical' => false, 'show_in_nav_menus' => false, 'menu_position' => 20, 'supports' => array( 'title', 'editor', 'autor', 'custom-fields', ' zmiany' ) ); register_post_type('external_role',$args); } Tak więc patrzenie na parametr `capability_type` (jeśli dobrze rozumiem) wygeneruje następujące możliwości: Meta możliwości: * edit_external_role * read_external_role * delete_external_role Podstawowe możliwości (które są generowane na podstawie meta możliwości): * edit_external_role * edit_others_external_role * publish_external_role * read_private_external_role Ok, teraz chciałbym wznieść moje możliwości do roli `admin`, aby administratorzy mogli w pełni zarządzać nowym CPT. Myślałem, że gdybym miał tylko wielkie „meta-zdolności”, to oznaczałoby, że wszystkie „prymitywne zdolności” byłyby również przyznane tej roli? Czy tak jest? Oto, co mam, aby dodać możliwości do roli administratora: // Dodaj wersaliki dla roli administratora $role =& get_role('administrator'); // możliwości ról zewnętrznych $role->add_cap('edit_external_role'); $role->add_cap('read_external_role'); $role->add_cap('delete_external_role'); Jednak to nie załatwia sprawy. Jaki jest zwięzły i prawidłowy sposób dodania do roli wszystkich możliwości zarządzania CPT? Wielkie dzięki, Dasha **EDIT** Używam teraz haka `init` w `functions.php`, aby dodać wersaliki do roli administratora: add_action( 'init', 'my_custom_roles_capabilities', 0 ); function my_custom_roles_capabilities(){ // Dodaj wersaliki dla roli administratora $role =& get_role('administrator'); // możliwości ról zewnętrznych $role->add_cap('edit_external_role'); $role->add_cap('read_external_role'); $role->add_cap('delete_external_role'); }


title: Czy istnieje sposób na wielokrotne zamawianie w wielu meta_zapytanie?

text: Eksperymentuję z wyszukiwaniem oraz wieloma kryteriami i porządkowaniem. Załóżmy, że mamy witrynę z nieruchomościami, wszystkie posty mają 2 pola niestandardowe („cena” i „powierzchnia”) i chcemy, aby odwiedzający mógł wyszukiwać, wpisując: * minimalną cenę * maksymalną cenę * minimalną powierzchnię * maksymalną surface To by załatwiło sprawę: function mwm_register_search_filters( $query ) { // Tylko na liście postów archiwalnych if( $query->is_archive ) { $filters_a = array(); if( !empty( $_GET['price_min'] ) ) $filters_a[] = array( 'key' => 'cena', 'value' => $_GET['price_min'], 'porównaj' => '> =', 'typ' => 'numeryczny' ); if( !empty( $_GET['price_max'] ) ) $filters_a[] = array( 'key' => 'cena', 'value' => $_GET['price_max'], 'porównaj' => '< =', 'typ' => 'numeryczny' ); if( !empty( $_GET['surface_min'] ) ) $filters_a[] = array( 'key' => 'surface', 'value' => $_GET['surface_min'], 'compare' => '> =', 'typ' => 'numeryczny' ); if( !empty( $_GET['surface_max'] ) ) $filters_a[] = array( 'key' => 'surface', 'value' => $_GET['surface_max'], 'compare' => '< =', 'typ' => 'numeryczny' ); if( !empty( $filtry_a ) ) $query->set( 'meta_query' , $filtry_a ); } return $zapytanie; } add_filter( 'pre_get_posts' , 'mwm_register_search_filters' ); To świetnie i działa dobrze. Ale potem przychodzi zamawianie. AFAIK Wordpress umożliwia zamawianie tylko za pomocą jednego meta_klucza / meta_wartości. To miłe, ale nie wystarczająco dobre, gdy trzeba zamawiać według wielu kryteriów. Czy istnieje sposób, aby zamówić na przykład: * Najpierw według ceny ASC * A w ramach równych cen, zamawiaj według powierzchni ASC?


title: Jak ręcznie określić bieżącą aktywną stronę za pomocą wp_nav_menu()

text: Czy istnieje sposób ręcznego określenia, która strona jest aktualnie „aktywna” podczas korzystania z `wp_nav_menu()`? Mam stronę „Produkty”, na której znajdują się linki do różnych (dynamicznych) taksonomii niestandardowych. Kiedy klikam jedną z tych taksonomii, pozostaję na stronie "Produkty", ale `wp_nav_menu()` traci odniesienie do tego, że nadal jestem na stronie "Produkty". Czy mogę to naprawić? Dziękuję! Jon


title: Pobierz najnowszy post z obrazem załącznika

text: To, co chcę zrobić, wydaje się proste, ale nie mogę tego obejść. Chciałbym otrzymać najnowszy post z załącznikiem graficznym. Niewielka pomoc byłaby mile widziana. Dzięki Lita


title: Określasz wersję WordPressa z wiersza poleceń hosta?

text: Biorąc pod uwagę, że nie mogę uzyskać dostępu do pulpitu nawigacyjnego/stron administracyjnych na moim blogu (to przyszłe pytanie) i mam dostęp do powłoki serwera hostingowego, czy mogę znaleźć aktualną wersję WordPressa z wiersza poleceń? Próbowałem grepować w poszukiwaniu ciągu „@since” we wszystkich plikach php w katalogu najwyższego poziomu bloga, a najnowszy, który widzę, to 2.5...


title: Dołączone komentarze, ale pojawiają się nad treścią zamiast poniżej

text:
Próbuję dołączyć szablon komentarzy na końcu obiektu flash w tym pliku wtyczki. Poniżej znajduje się pełny kod. Aby dokładnie określić, gdzie dodałem szablon komentarzy, zapoznaj się z tym Pastebin. Dodany szablon komentarzy znajduje się w wierszu 164. Z jakiegoś powodu, mimo że go dołączyłem, szablon komentarzy pojawia się nad obiektem flash, a nie poniżej. Czy ktoś ma jakiś pomysł, jak mogę to rozwiązać? <?php require_once('ismobile.php'); /************************************************** **************** /* Build Player ****************************** *************************************/ class Player { var $width, $height; public function buildPlayer( $profileid = 1, $videoid = 1, $autodetect = 1 ) { global $wpdb; $profile = $wpdb->get_row("SELECT * FROM ".$wpdb->prefix."allvideogallery_profiles WHERE id=".$profileid); $to->szerokość = $profil->szerokość; $ta->wysokość = $profil->wysokość; if( isset($_GET['slg']) && $autodetect == 1 ) { $slug = $_GET['slg']; $video = $wpdb->get_row("WYBIERZ * Z ".$wpdb->prefiks."allvideogallery_videos WHERE slug='$slug'"); $identyfikator wideo = $wideo->identyfikator; } else { $video = $wpdb->get_row("WYBIERZ * Z ".$wpdb->prefix."allvideogallery_videos WHERE id=".$videoid); } if($video->type == 'thirdparty') { $result = '
width . 'px; height:' . $this->height . 'px; ">'; $result .= $video->firma trzecia; $wynik .= '
'; } else { $arr_params = array(); $custpage = ( $profile->custom_page_url ) ? $profile->custom_page_url : $this->curPageURL(); if( isset($_GET['catid'])) { $arr_params['catid'] = $_GET['catid']; } if( isset($_GET['sortuj'])) { $arr_params['sort'] = $_GET['sortuj']; } $videosids=$video->id; $imgad_query=mysql_query("wybierz * z ".$wpdb->prefix."allvideogallery_videos GDZIE opublikowano='1' i id='$videosids'"); $imgad_row=mysql_fetch_array($imgad_query); $imgads=$imgad_row['img_ads']; $text_ads1=$imgad_row['text_ads']; $ads_links1=$imgad_row['ads_links']; $imgad_link=''; $flashvars = 'base='.get_option('siteurl').'&wp=1&vid='.$videoid.'&pid='.$profileid.'&page='.urlencode( @add_query_arg($arr_params, $custpage) ) ; $detect = nowy IsMobile(); $result = $detect->isMobile() ? $this->gethtmlplayer( $profile, $video ) : $this->getflashplayer( $profile, $flashvars, $ads_links1, $imgads, $text_ads1 ); } $this->updatehits( $video->slug ); $cust_class = ( $profile->custom_player_class ) ? $profile->custom_player_class : 'avs_player'; $output = '   ' . "\n"; $output .= '
width.'px;">' . "\n"; if($profile->tytuł) { $output .= '
'.$video->tytuł.'
' . "\n"; } if($profile->kategoria) { $output .= '
Kategoria: '.$video->kategoria.'
' . "\n"; } if($profile->hits) { $output .= '
Hity : '.$video->hits.'
' . "\n"; } $output .= '

' . "\n"; $wyjście .= $wynik . "\n"; if($video->description) { $output .= '
'.$video->opis.'
' . "\n"; } $output .= '
' . "\n"; zwróć $wyjście; } funkcja publiczna getflashplayer( $profile, $flashvars, $ads_links1, $imgads, $text_ads1 ) { global $allvideogallery_plugin_dir; if(!empty($imgads)) { $show_ads1=''; } else { $show_ads1=$text_ads1; } $get_ads_width=$this->szerokość; $get_ads_width1=$get_ads_width-30; $siteurl = get_option('siteurl'); $src = $siteurl . '/wp-content/plugins/' . $allvideogallery_plugin_dir . '/player.swf?random=' . skraj(); $result .= '
szerokość . 'px; wysokość:'.$this->wysokość.'px;">
'; if(!empty($imgads) || !empty($text_ads1)) { $result .= '
”; $result .= '
'; $result .= '
'; //$wynik .= ''; $result .= ''.$show_ads1.''; $wynik .= '
'; } $result .= '<object id="odtwarzacz" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" name="odtwarzacz" width="' . $this->szerokość . '" height="' $ta->wysokość '">'; $result .= '<param name="film" value="' . $src . '" />'; $result .= '<param name="wmode" value="opaque" />'; $result .= '<param name="allowfullscreen" value="true" />'; $result .= '<param name="allowscriptaccess" value="always" />'; $result .= '<param name="flashvars" value="' . $flashvars .'" />'; $result .= '
<object type="application/x-shockwave-flash" data="' . $src . '" width="' . $this->width . '" height="' . $ to->wysokość '">'; $result .= '<param name="film" value="' . $src . '" />'; $result .= '<param name="wmode" value="opaque" />'; $result .= '<param name="allowfullscreen" value="true" />'; $result .= '<param name="allowscriptaccess" value="always" />'; $result .= '<param name="flashvars" value="' . $flashvars .'" />'; $result .= '</object>
'; $result .= '</object>

'; $result .= comments_template(); //Dołącz szablon komentarzy do wyniku return $result; } public function gethtmlplayer( $profile, $video ) { if($video->type == 'youtube') { $url_string = parse_url($video->video, PHP_URL_QUERY); parse_str($url_string, $args); $result = 'szerokość.'" height="'.$this->wysokość.'" '; $result .= 'src="http://www.youtube.com/embed/'.$args['v'].'" frameborder="0" allowfullscreen>'; } else { $podgląd = $wideo->podgląd ? 'plakat="' . $video->podgląd . ''"' : ''; $result = '<video onclick="this.play();" width="'.$this->szerokość.''" height="'.$this->wysokość.'" '.$podgląd.' kontrolki>'; $result .= '<source src="'.$video->wideo.'" />'; $result .= '</video>
'; $result .= comments_template(); //Dołącz szablon komentarzy do wyniku } return $result; } function curPageURL() { $pageURL = 'http'; if (!empty($_SERVER['HTTPS'])) {if($_SERVER['HTTPS'] == 'on'){$pageURL .= "s";}} $pageURL .= "://" ; if ($_SERVER["SERVER_PORT"] != "80") { $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]; } else { $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]; } return $pageURL; } funkcja updatehits ($slug) { global $wpdb; $table_name = $wpdb->przedrostek."allvideogallery_videos"; $video = $wpdb->get_row("SELECT * FROM $table_name WHERE slug='$slug'"); $liczba = ($wideo) ? $video->hits + 1 : 1; $video->hits = $liczba; $wpdb->update($table_name, array('hits' => $video->hits), array('id' => $video->id)); } } ?>


title: Usuwanie nadrzędnego ślimaka w hierarchicznym niestandardowym typie wpisu

text: Muszę usunąć nadrzędny ślimak w permalinku posta podrzędnego. Post podrzędny ma inny cpt niż wpis nadrzędny. Więc otrzymuję: example.com/parentcpt/parent-post-name/child-post-name //co daje 404. Potrzebuję example.com/child-post-name lub: example.com/childcpt/child- post-name Przełączanie się między strukturami permalinków też nie pomaga. Próbowałem wielu wtyczek, ale nie rozwiązują. Dodanie następującego nie pomaga: 'rewrite' => array('slug' => false, 'with_front' => false)// funkcja register_post_type Proszę o pomoc... :)


title: Potrzebujesz trochę nauki PHP! przekazywanie var do adresu URL i starej tabeli opcji

text: Tak więc budowałem stronę opcji motywu, której jednym z celów jest uzyskanie pewnych wartości stylu, które zostaną przekazane do mojego arkusza stylów php w adresie URL. Oto co mam: /* Pobierz wszystkie ustawienia motywu */ global $options; $options = get_option( 'theme_options' ); /* ...i ustaw je! */ $stylevar = '?ts='.$options['thumbsize'].'?bg='.$options['bg_color'].'?tc='.$options['text_color'].'?hc ='.$options['heading_color'].'?nc='.$options['nav_buttons_color'].''; /* Dodaj do kolejki */ if( !is_admin() ){ // Ten format działa wp_register_style('style', (get_bloginfo('stylesheet_directory') . '/lib/css/style.php?ts='.$options[' rozmiar miniatury'']'')); // To nie wp_register_style('style', (get_bloginfo('stylesheet_directory') . '/lib/css/style.php'.$stylevar.'')); wp_enqueue_style('styl'); } Tak więc dzieją się dwie rzeczy: 1. Otrzymuję błąd debugowania WP, którym chcę się zająć: `Uwaga: Niezdefiniowany indeks` itp. Przypuszczalnie ma to związek z niewykonaniem sprawdzenia `isset`? 2. Umieszczenie wszystkich ustawień w zmiennej kończy się niepowodzeniem, co daje: `"style.php?ts=200%3Fbg%3D%3Ftc%3D%3Fhc%3D%3Fnc%3D&ver=3.2.1" type="text/ css"". Tu właśnie wkracza szkolnictwo. Czy istnieje czystszy sposób na napisanie tego? Czy wszystkie opcje mogą być wyprowadzane z jakimś królem pętli? ... i jak to naprawić? Chętnych do nauki proszę uczyć :-)


title: Jak wyświetlić opis danej kategorii z niestandardowej taksonomii?

text: Mam taksonomię o nazwie **`tcp_product_category`**. W panelu administracyjnym stworzyłem kilka terminów w ramach tej taksonomii. Na stronie głównej chcę wyświetlić opis jednego z tych terminów ze ślimakiem **`all-products`**. Dla wszystkich normalnych kategorii używam tego kodu: <?php echo category_description( get_term_by('slug', 'guide', 'category')->term_id ); ?> Wydaje się, że to nie działa z niestandardowymi taksonomiami. Kod: <?php echo category_description( get_term_by('slug', 'all-products', 'tcp_product_category')->term_id ); ?> Wszystkie wstawione przeze mnie wartości są poprawne, ale `get_term_by()` po prostu nie daje żadnych wyników. Jakieś pomysły jak to naprawić? Dzięki, Chris Planeta


title: Jak poprawnie używać polecenia „wp post create” w wp-cli?

text: Muszę utworzyć pojedynczy post z tytułem, treścią i fragmentem za pomocą tego polecenia, zgodnie z opisem w dokumentacji narzędzia. Czy możesz pokazać mi przykład, jak z niego korzystać? Nie mogłem znaleźć ani w oficjalnej dokumentacji ani w Google. Dziękuję!


title: Pre_get_posts daje 404 na niestandardowy typ postu

text:
Próbuję filtrować zapytanie na podstronie o nazwie „Zadaj pytanie”, aby wyświetlić wszystkie ostatnie pytania przesłane przez użytkowników, ale otrzymuję błąd 404 podczas przechodzenia do strony. Opróżnienie struktury permalinka nie rozwiązało problemu. Obecnie jest ustawiony na Miesiąc i Nazwa. Tworzenie nowego pytania działa poprawnie i mam dostęp do nowych postów. Taksonomie niestandardowe również działają poprawnie, ale strony archiwum nie. To jest kod, którego używam. **Typ posta** function question_post_type() { $labels = array( 'name' => _x( 'Pytania', 'Ogólna nazwa typu postu', 'text_domain' ), 'singular_name' => _x( 'Pytanie', 'Typ Postu Pojedyncza Nazwa', 'text_domain' ), 'menu_name' => __( 'Pytania', 'text_domain' ), 'parent_item_colon' => __( 'Pytanie nadrzędne:', 'text_domain' ), 'all_items' = > __( 'Wszystkie pytania', 'text_domain' ), 'view_item' => __( 'Wyświetl pytanie', 'text_domain' ), 'add_new_item' => __( 'Dodaj nowe pytanie', 'text_domain' ), 'add_new ' => __( 'Nowe pytanie', 'text_domain' ), 'edit_item' => __( 'Edytuj pytanie', 'text_domain' ), 'update_item' => __( 'Update_domain', 'text_domain' ), ' search_items' => __( 'Wyszukaj pytania', 'text_domain' ), 'not_found' => __( 'Nie znaleziono pytań', 'text_domain' ), 'not_found_in_trash' => __( 'Nie znaleziono pytań w Koszu', 'text_domain' ), ); $rewrite = array( 'slug' => '/ask/question', 'with_front' => true, 'pages' => true, 'feeds' => true, ); $args = array( 'label' => __( 'pytanie', 'text_domain' ), 'description' => __( 'Pytanie', 'text_domain' ), 'labels' => $etykiety, 'obsługuje' => array( 'title', 'redaktor', 'autor', 'komentarze', 'poprawki', 'niestandardowe-pola', 'atrybuty-strony', ), 'hierarchical' => false, 'public' => true, 'show_ui' => prawda, 'show_in_menu' => prawda, 'show_in_nav_menus' => prawda, 'show_in_admin_bar' => prawda, 'menu_position' => 20, 'can_export' => prawda, 'has_archive' => prawda, ' exclude_from_search' => false, 'publicly_queryable' => true, 'rewrite' => $rewrite, 'capability_type' => 'post', ); register_post_type( 'pytanie', $args ); } add_action( 'init', 'question_post_type', 0 ); **Taxonomy** if ( ! function_exists('custom_question_taxonomy') ) { // Zarejestruj funkcję taksonomii niestandardowej custom_question_taxonomy() { $labels = array( 'name' => _x( 'Typy pytań', 'Ogólna nazwa taksonomii', ' text_domain' ), 'singular_name' => _x( 'Typ pytania', 'Pojedyncza nazwa taksonomii', 'text_domain' ), 'menu_name' => __( 'Typ pytania', 'text_domain' ), 'all_items' => __ ( 'Wszystkie typy pytań', 'text_domain' ), 'parent_item' => __( 'Typ pytania nadrzędnego', 'text_domain' ), 'parent_item_colon' => __( 'Typ pytania nadrzędnego:', 'text_domain' ), ' new_item_name' => __( 'Nowy typ pytania', 'text_domain' ), 'add_new_item' => __( 'Dodaj typ pytania', 'text_domain' ), 'edit_item' => __( 'Edytuj pytanie Typ pytania', 'text_domain' ), 'update_item' => __( 'Aktualizuj typ pytania', 'text_domain' ), 'separate_items_with_commas' => __( 'Oddziel typy pytań przecinkami', 'text_domain' ), 'search_items' => __( 'Wyszukaj typ pytania', 'text_domain' ), 'add_or_remove_items' => __( 'Dodaj lub usuń typy pytań', 'text_domain' ), 'choose_from_most_used' => __( 'Wybierz z najczęściej używanych typów pytań ', 'domena_tekstowa' ), ); $rewrite = array( 'slug' => 'pytanie-typ', 'with_front' => false, 'hierarchical' => true, ); $args = array( 'labels' => $labels, 'hierarchical' => true, 'public' => true, 'show_ui' => true, 'show_admin_column' => true, 'show_in_nav_menus' => true, 'show_tagcloud ' => prawda, 'przepisz' => $przepisz, ); register_taxonomy( 'typ-pytania', 'pytanie', $args ); } add_action( 'init', 'custom_question_taksonomia', 0 ); } **Query** function question_posts_query( $query ) { if ( $query->is_post_type_archive( 'pytanie' ) || $query->is_page(3001) && $query->is_main_query() ) { $query->set ( 'post_type', 'pytanie' ); } return $zapytanie; } add_filter( 'pre_get_posts', 'question_posts_query' ); **Moja pętla strony** <?php if (have_posts()) : while (have_posts() ) : the_post(); ?>

 <?php the_content(__('Więcej informacji »', 'gp_lang')); ?> <?php the_terms( $post->ID, 'typ-pytania', '
Kategoria: ', '', '
' ); ?>

 <?php endwhile; ?> <?php endif; ?>


title: Problemy z uprawnieniami do wtyczek/folderów na platformie Azure

text: Czy ktoś napotkał problemy z wtyczkami podczas korzystania z Wordpressa na platformie Azure? Niedawno uruchomiłem darmową instalację Wordpress na azurewebsites.net, używając PHP 5.4 i Wordpress 3.5. Po wtyczce w szczególności, WPTouch wydaje się mieć problemy podczas tworzenia folderu lub przesyłania pliku. Czy ktoś inny miał problemy z awarią wtyczki z powodu uprawnień do folderów?


title: the_excerpt() i <-- more --> tag

text: Na mojej stronie archiwum the_excerpt() nie wyświetla treści przed tagiem more, ale wycinek pełnej treści posta. Jestem zobowiązany do wypełnienia "Wypisu" w edytorze postów, który go zastąpi. Jak zmusić the_excerpt(), aby wyświetlała tylko zawartość przed tagiem more?


title: niestandardowe elementy wp_dropdown_categories w wordpressie

text: Mam funkcję wp_dropdown_categories w moim pliku searchform.php. W tej chwili użytkownik może wybrać kategorię posta, w której chce przeszukiwać. Czy istnieje sposób, aby menu rozwijane zawierało niestandardową taksonomię i niestandardowy typ posta? Na przykład, jeśli mam niestandardowy typ postu dla galerii i niestandardową taksonomię dla miejsc... jak wyświetlić menu wp, które pozwala użytkownikowi wybrać wyszukiwanie „zdjęć” lub „lokalizacji”?


title: Czy wszystkie opcje są ładowane do pamięci przy każdym żądaniu?

text: Czy wszystkie zmienne opcji są pobierane z bazy danych i ładowane do pamięci podręcznej przy każdym żądaniu?


title: Dostosowywanie przycisku Quicktags edytora HTML, aby otworzyć okno dialogowe wyboru opcji wstawiania

text:
Szukam dodania niestandardowych przycisków szybkiego tagu, które pozwoliłyby mi wyświetlić pośrednie okno dialogowe przed wstawieniem kodu. ## Sytuacja 1) Kliknięcie przycisku szybkiego tagu otwiera okno dialogowe lub okno modalne grubej ramki. 2) Otwarte okno dialogowe wyświetla niektóre opcje dotyczące klasy itp. oraz przycisk Wstaw. 3) Kliknięcie przycisku „Wstaw” wstawia kod. Aby dodać przycisk szybkiego tagu, użyjemy edButtons[ edButtonsLength+ ] = new edButton( 'ed_mybutton' , 'Insert button', '
', '
' ); //// edHTML += '<input type="button" value="Wstaw niestandardowy kod" id="ed_my_button" class="ed_button" onclick="edInsertTag(edCanvas, edButtonLength_t + 1)" title="Wstaw kod" />'; Teraz, jak mogę ominąć przycisk, aby zamiast tego otworzyć okno dialogowe (lub modalne okno dialogowe)? Mogę dodać przycisk bez definiowania go, np. edHTML += '<input type="button" value="Wstaw niestandardowy kod" id="ed_my_button" class="ed_button" onclick="customFunction()" title="Wstaw kod " />"; // i var customFunction = function() { openURL = '<?php admin_url() ?>admin-ajax.php?action="insertCodeAction&TB_iframe=true'; tb_show( 'Wstaw niestandardowy kod', openURL ); }; Twoja mądrość. Z góry dziękuję. PS : zrobienie tego z TinyMCE jest stosunkowo łatwe, zastanawiam się, jak to zrobić z szybkimi tagami HTML. :)


title: Wszystkie witryny z podfolderów sieci wordpress są przekierowywane do głównej witryny

text: Mam konfigurację sieci WP z najnowszymi wersjami WP i Buddypress. Chcę skonfigurować około 40 użytkowników z blogami i stworzyłem te blogi za pomocą wtyczki Batch Create, ale teraz, gdy próbuję odwiedzić jeden z tych folderów, np. burkphysics.com/elizabethf, przekierowuje on do burkphysics.com. Wszystkie witryny, nawet te, które tworzę ręcznie, robią to. Postępowałem zgodnie z krokami konfiguracyjnymi, aby poprawnie skonfigurować zarówno mój plik wp-admin, jak i plik .htaccess, i nie widzę żadnych problemów. To również działało dobrze w zeszłym roku, zanim ulepszyłem wordpress i buddypress. Oto plik .htaccess: RewriteEngine On RewriteBase /wordpress/ RewriteRule ^index\.php$ - [L] # przesłanych plików RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp -includes/ms-files.php?file=$2 [L] # dodaj końcowy ukośnik do /wp-admin RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin / [R=301,L] RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^ - [L] RewriteRule ^[_0-9a-zA-Z-]+/(wp-(content |admin|zawiera).*) $1 [L] Przepisz regułę ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L] Przepisz regułę . index.php [L] Jakakolwiek pomoc byłaby bardzo mile widziana.


title: Dlaczego $wpdb zwraca ciągi dla wartości całkowitych mysql?

text: Uważam, że jest to bardzo niewygodne i trudne do zrozumienia, że domyślnym zachowaniem interfejsu bazy danych Wordpress jest konwersja wszystkich typów liczb całkowitych (i pływających?) na ciągi. np. $wp_posts = $wpdb->get_results('WYBIERZ * z wp_posts'); $unexpected_type = gettype($wp_posts[0]->ID) == 'ciąg'; Proszę potwierdzić moje podejrzenie, że jest to zrobione w celu obsługi bardzo dużych (pojemnych) typów liczb całkowitych, które nie są obsługiwane przez PHP, lub podać alternatywne wyjaśnienie, dlaczego ktoś miałby zdecydować się na konwersję liczb całkowitych na łańcuchy. Drugą częścią mojego pytania, jak można się spodziewać, jest sprawdzenie, czy istnieje wbudowany parametr konfiguracyjny do klasy `wpdb`, który pozwalałby żądać _integer_ dla rekordów typu integer.


title: Dynamiczna taksonomia w permalinku sprawiła, że wszystkie inne posty NIE ZNALEZIONO?

text: Dodałem moje taksonomie w permalinku zamiast ślimaka typu Custom Post i działa dobrze. Powiedziałbym nawet, że wszystko działało dobrze, ale zmiana instalacji WP na Multisite zepsuła wszystkie inne posty i strony (nie CPT). Permalinki są generowane poprawnie za każdym razem jako ?p=123 lub inne odgadnięte adresy URL, więc informacje o wpisie są znalezione, ale nie znajdują się dla pętli. W ten sposób uzyskałem taksonomię zamiast slug CPT: 1) Przepisanie post_type jest zdefiniowane jako %listing_type% i działa dobrze, jak następuje: 'rewrite' => array( 'slug' => '/%listing_type% ', 'with_front' => false, 2) A poniższe funkcje zastępują ciągi %listing_type% i „listing_type” z adresów URL i linków do terminów, generowanych m.in. odpowiednio wp_list_categories() (usuwanie nazwy CPT z adresu URL) function listing_type_link_filter_function( $post_link, $id = 0, $leavename = FALSE ) { if ( strpos('%listing_type%', $post_link) === 'FALSE' ) { return $post_link; } $post = get_post($id); if ( !is_object($post) || $post->post_type != 'lista' ) { return $post_link; } $terms = wp_get_object_terms($post->ID, 'listing_type'); if ( !$terms ) { return str_replace('/listing_type', '/', $post_link); } return str_replace('%listing_type%', $terms[0]->slug, $post_link); } add_filter('post_type_link', 'listing_type_link_filter_function', 1, 3); function term_link_filter_function( $termlink, $term, $taksonomia ) { if ( strpos('typ_listy', $termlink) === 'FALSE' ) { return $termlink; } else return str_replace('/listing_type', '', $termlink); } add_filter('term_link', 'term_link_filter_function', 1, 3); Teraz jestem prawie pewien, że wszystko działało dobrze, zanim zrobiłem z niego Multisite. Zajmę się tym, jak bezpiecznie to cofnąć (rzecz wielostanowiskowa) i opublikuję aktualizację później. Masz jakiś pomysł, co może łamać posty i strony NIE w powyższych CPT? Jeśli usunę %s z slug post_type, wszystko działa dobrze. **UPDATAE** Zauważyłem, że inne działające przykłady miały regułę przepisywania dla każdego niestandardowego linku bezpośredniego, więc dodałem go i VOILA, posty są teraz naprawione, ale strony nadal są zepsute **TO CZĘŚCIOWO DZIAŁA (tylko posty)** globalne $wp_rewrite; $wp_rewrite->extra_permastructs['listing'][0] = "%listing_type%/%postname%"; add_rewrite_rule("([^/]+)/([^/]+)/?$", 'index.php?post_type=listing&listing_type=$matches[1]&name=$matches[2]', 'dół') ; add_rewrite_rule("([^/]+)/([^/]+)/?$", 'index.php?post_type=listing&listing_type=$matches[1]&page=$matches[2]', 'dół') ; Powyższy kod (wewnątrz funkcji definicji CPT) **naprawił tylko posty** , ale strony (o czym była druga linia add_rewrite_rule) nadal są zepsute.


title: Jak opublikować niestandardowy typ posta dla użytkownika o niestandardowej roli, a nie „prześlij do recenzji”?

text: Stworzyłem niestandardowy post typu 'openproject', w którym ustawiam możliwości. function custom_post_openproject() { $labels = array( 'name' => 'openproject', 'add_new' => 'Dodaj nowy openproject', 'add_new_item' => 'Dodaj nowy openproject', 'edit_item' => 'Edytuj openproject' , 'menu_name' => 'Otwórz projekt' ); $map_meta_cap = prawda; $capability_type = 'openproject'; $capabilities = array( 'edit_files' => 'edit_files', 'upload_files' => 'upload_files', 'edit_post' => 'openproject_edit', 'read_post' => 'openproject_read', 'delete_post' => 'openproject_delete' 'edit_posts' => 'openprojects_edit', 'edit_others_posts' => 'openprojects_edit_others', 'publish_posts' => 'openprojects_publish', 'delete_posts' => 'openprojects_delete', 'delete _published=> 'openprojects_delete_others', 'edit_publish_posts' => 'openprojects_edit_publish', ); $args = array( 'labels' => $labels, 'public' => true, 'show_in_nav_menus' => true, 'show_ui' => true, 'show_in_menu' => true, 'capability_type' => $capability_type, ' features' => $capabilities, 'map_meta_cap' => $map_meta_cap, 'hierarchical' => false, 'with_front' => false, 'supports' => array( 'title', 'editor', 'autor', 'thumbnail ', 'fragment', 'komentarz'), 'has_archive' => false, 'rewrite' => array('slug'=>'openproject'), ); register_post_type( 'openproject', $args ); } Przypisałem ten niestandardowy typ posta do funkcji niestandardowej 'openproject_access' openproject_user_can(){ $newrole = add_role( 'openproject_access', 'Membre OpenProject', array( 'read'=> true, 'openprojects_publish' => true, ' openproject_read' => true, 'openproject_edit' => true, 'openprojects_edit_others' => false, 'openprojects_edit' => true, 'openproject_delete' => true, 'openprojects_delete' => true, 'openprojects_delete_others' => com false ' => fałsz, 'moderate_comments' => fałsz, 'edit_files' => prawda, 'upload_files' => prawda, ) ); } Utworzyłem użytkownika z tą rolą, ale kiedy jestem zalogowany jako ten użytkownik, problem polega na tym, że tworzę nowy 'openproject', mam tylko przycisk "Prześlij do recenzji" a nie "Publikuj" ! Wydaje mi się, że poprawnie ustawiłem możliwość publikowania w moich ustawieniach (`'publish_posts' => 'openprojects_publish'` w CPT i 'openprojects_publish' => true,` w roli) Co przegapiłem? EDYCJA Aby być kompletnym, wypróbowałem to na świeżej instalacji WP 4.0. W moim wp_usermeta mam `a:1:{s:18:"openproject_access";b:1;}` dla możliwości tego użytkownika


title: Zapytanie o najnowsze posty autora

text:
Jestem całkiem nowy w wordpressie, ale próbuję uzyskać najnowsze posty określonego autora. Poniższy kod wyświetla tylko najnowsze wpisy o bagnach. Używam pola niestandardowego, aby uzyskać identyfikator autora. EDIT by vancoder: Mam na myśli to, że używam wtyczki ACF, która pozwala na wybór 1 lub więcej użytkowników WP, api zwraca wybrane obiekty użytkownika Wszelkie sugestie byłyby niesamowite... <?php $current_user = get_field( 'Nazwa Użytkownika'); if( $bieżący_użytkownik) : ?>

Artykuły społeczności dotyczące wiedzy
 <?php $userID = $bieżący_użytkownik ->Identyfikator; $args = array( 'author' => $userID, 'showposts' => 2, 'caller_get_posts' => 1 ); $zapytanie = nowe WP_Query($args); if( $query->have_posts() ) { while ($query->have_posts()) : $query->the_post(); ?> <div class="fragment-artykułu<?php echo 'wyciąg-' . $c; ?>">
<a href="<?php the_permalink(); ?>"><?php the_title( ); ?>

Przez <a href="<?php echo get_author_posts_url(get_the_author_meta( 'ID' )); ?>"><?php the_author_meta('display_name'); ?>

 <?php the_excerpt(); ?>
 <?php endwhile; } ?> <a href="<?php echo get_author_posts_url(get_the_author_meta( 'ID' )); ?>">Więcej od tego współautora →
 <?php endif; ?>


title: Jak umożliwić użytkownikowi wybór multimediów z biblioteki multimediów

text: Przepraszam za niski poziom badań, ale medialny kod JS zawsze był dla mnie zagadką, a google nie pokazuje żadnych aktualnych i rozsądnych odpowiedzi. Scenariusz jest prosty, mam formularz, w którym chcę pozwolić użytkownikowi albo przesłać nowy obraz, albo wybrać jeden z biblioteki multimediów. Wydaje się, że najłatwiejszym sposobem jest otwarcie modu dodawania multimediów i umożliwienie mu obsługi faktycznego przesyłania w razie potrzeby. więc wszystko, czego potrzebuję, to 1. Prosta część - otwórz Media modal. 2. Trudniejsza część - zdobądź id, a może adres URL wybranego nośnika, gdy się zamyka. Czy jest to w ogóle możliwe bez rozszerzania w jakiś sposób modalnego? Prawdopodobnie mogę żyć z domyślnym tekstem na przyciskach, ale fajnie będzie to również zmienić.


title: Problem z przeglądaniem ostatnich postów ze strony sieciowej do strony głównej

text: Stworzyłem stronę w wordpressie **damiracle.com**, gdzie stworzyłem już stronę blogową. Ale klient chce hostować bloga w subdomenie **blog.damiracle.com** iz innym motywem. Stworzyłem więc **damiracle.com** , główną i administracyjną witrynę sieciową po przejściu całej procedury Kodeksu Tworzenia Sieci. Po stworzeniu sieci dodałem nową stronę dla bloga, która znajduje się w subdomenie o nazwie **blog.damiracle.com**. Zainstalowałem również strony WordPress MU Domain Mapping i WordPress MU Sitewide Tags, aby wyświetlić najnowsze posty z **blog.damiracle.com** do **damiracle.com**, ale mam problem z wyświetlaniem postów z * *blog.damiracle.com** na **damiracle.com**. Wszystkie posty, które przeglądasz, to ostatnie posty, które są już na stronie bloga **damiracle.com** Wiem, że źle się dzieje, ale nie wiem, co właściwie robię.


title: Jak zmodyfikować podstawową funkcję Genesis?

text: Próbuję zmodyfikować podstawową funkcję Genesis framework. Chcę usunąć `strip_shortcodes()` z funkcji `get_the_content_limit()`. Oto mój kod: if ( wp_get_theme( 'geneza' )) { // zastąp get_the_content_limit() niestandardowym remove_filter( 'the_content_limit', 'get_the_content_limit' ); add_filter( 'limit_treści', 'custom_get_the_content_limit' ); // skopiowane z genesis/lib/functions/formatting.php:57 function custom_get_the_content_limit( $max_characters, $more_link_text = '(więcej...)', $stripteaser = false ) { $content = get_the_content( '', $stripteaser ) ; //* Usuń tagi i zachowaj skrócone kody, aby licznik obcinania treści był wykonywany poprawnie $content = strip_tags( $content, apply_filters( 'get_the_content_limit_allowedtags', '


title: Kierowanie na określony post w pętli (CSS)

text:
Tworzę sekcję Top Photos na stronie. Ta sekcja będzie miała 3 ostatnie posty (w postach są galerie), każdy z miniaturą, linkiem i fragmentem postów. Posty będą wyświetlane w „stylu pudełkowym” i wyrównane poziomo. Pojemnik na te pudełka ma szerokość 1050px. Oto moja pętla:
 <?php $custom_query = new WP_Query('cat=2687&posts_per_page=3'); //Góra strony - Kategoria Top Photo while($custom_query->have_posts()) : $custom_query->the_post(); ?>
 <li <?php post_class(); ?> id="post-<?php the_ID(); ?>"> <a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('top-zdjęcie-kciuk'); ?>
<?php the_title(); ?>

 <?php llc_excerpt('llc_excerptlength_long', 'llc_excerptmore') ?>

<a href="<?php the_permalink(); ?>">Wyświetl galerię

 <?php endwhile; ?> <?php wp_reset_postdata(); // zresetuj zapytanie ?>
 i oto mój plik CSS: #top-content{ margin-left: -10px; } #top-content ul{ margin: 0 4px; pływak: lewy; } #top-content ul li{ szerokość: 320px; wzrost: 100%; margines: 0 5px 0 5px; dopełnienie: 0 14px 0 0; /*wyświetlanie: blok;*/ border-right: 1px solid #D6D5D5; } #top-content h2 { rodzina czcionek: Verdana, Genewa, bezszeryfowa; rozmiar czcionki: 12 pkt; styl czcionki: normalny; wysokość linii: 12 pkt; grubość czcionki: pogrubiona; wariant czcionki: normalny; transformacja tekstu: brak; kolor: #4A65A8; dopełnienie: 0px; margines: 7px 0 0 0; wyrównanie tekstu: do lewej; } #top-content ul li p{ szerokość: 320px; margines: 5px 0 0 0; text-align: justuj; } #top-content ul:last-child{ margin-left: 5px; kolor tła: żółty; styl obramowania: 0px; } #top-content ul:last-child a img{ margin-left:23px; } #top-content ul:last-child h2{ margin-left:23px; } #top-content ul:last-child p{ margin-left:23px; } (przepraszam za niechlujny kod.. Eksperymentowałem :P) Chcę stworzyć linię podziału CSS między tymi "pudełkami" (postami). Pierwsze i trzecie (ostatnie) pole powinny być umieszczone odpowiednio przy lewej i prawej krawędzi kontenera, odpowiednio **bez** lewej i prawej krawędzi, więc myślę, że sposobem na osiągnięcie tego jest skierowanie na **drugi post, a następnie dodaj do niego lewą i prawą ramkę**. Jak to osiągnąć, czy masz inne sugestie? (Myślę, że w pętli można dodać niestandardową klasę). Jak widać, próbowałem użyć selektora ostatniego dziecka (z n-tym i tym "n") i nadal nie mam szczęścia.. Nie jestem dobry w CSS (i PHP) TBH.. Z góry dziękuję !


title: Jak można mieć warunkowy tag szablonu oparty na głównej pętli w pętli drugorzędnej z nowym WP_Query(), używając get_template_part()

text:
Jaka jest najlepsza metodologia praktyki odwoływania się do pętli głównej z kontekstu pętli drugorzędnej w części wywoływanej przez get_template_part()? Na przykład, powiedzmy, że moja strona główna zawiera wtórną pętlę wyświetlającą dwa posty typu artykuł: <?php $articles = new WP_Query( array( 'post_type' => 'article', 'posts_per_page' => 2 ) ); if ( $posts->have_posts() ) : ?>
 <?php while ( $articles->have_posts() ) : $articles->the_post(); get_template_part( 'szablony/lista', 'artykuł'); koniec; ?>
 <?php endif; ?> A w /templates/listing-article.php mam: <?php if (!is_front_page()) : ?>
<?php the_content(); ?>
 <?php endif; ?> Tutaj the_content() wyświetla zawartość artykułu zgodnie z oczekiwaniami/zamierzeniami. is_front_page() zwraca false zgodnie z oczekiwaniami, ale nie tak, jak zamierzano - moim zamiarem jest pokazanie treści na dowolnej stronie oprócz strony głównej. Moje pytanie brzmi zatem: w jaki sposób można sprawić, aby warunkowe tagi szablonów, takie jak is_front_page(), zwracały wartość true/false na podstawie wpisu w pętli głównej, w przeciwieństwie do mojej pętli wtórnej. Możesz ustawić zmienną globalną w szablonie strony głównej, do której następnie odwołujesz się w swojej części, ale pytam, czy istnieje standardowe, lepsze rozwiązanie.


title: Wyświetlaj obrazy autora tylko w wp.media

text: Używam ekranu modalnego wp.media do przesyłania i zarządzania biblioteką multimediów. Używam następującego kodu. file_frame = wp.media.frames.file_frame = wp.media({ title: "Wybierz lub prześlij nowe zdjęcia", button: {text: "Select"}, biblioteka: {type: 'image', author: userSettings.uid} , id: 'logo-frame', multiple: false, edit_sidebar: false, default_tab: 'upload', tabs: 'upload, library', return_image_size: 'thumbnail' }); Chciałbym wyświetlić tylko obrazy określonego autora, więc korzystam z poniższej linii. autor: userSettings.uid. To nie działa, wszystkie obrazy są nadal wyświetlane. Z góry dziękuję.


title: jaki jest pożytek z /wp-includes/SimplePie?

text: Mam tę lokalizację na moim serwerze. `/home/localhost/public_html/wp-include/SimplePie.` Nie zainstalowałem wtyczki samplepie. Do czego służy, ponieważ nie jest powiązany z wtyczką samplepie. Powodem, dla którego pytam, jest to, że mam błąd krytyczny wygenerowany z różnych plików php w tej lokalizacji. Za każdym razem, gdy debuguję błąd, tworzony jest nowy błąd w innym pliku, który znajduje się w tej samej lokalizacji. Później odkryłem, że było to związane z wtyczką. Usunąłem wtyczkę, ale folder nadal istnieje. Do czego to służy.?


title: Dołączenie „wp-load.php” po innym include() generuje błąd

text: Znam wszystkie wady dołączania wp-load.php, ale proszę o wyrozumiałość :) Próbuję stworzyć własną funkcjonalność podobną do admin-ajax, w taki sposób, abym mógł kontrolować, czy ładuję domyślną Środowisko WordPress, niezależnie od tego, czy ładuję je ze stałą `SHORTINIT` zdefiniowaną jako true, oraz z szczegółową kontrolą nad każdym modułem mojej wtyczki, zgodnie z wymaganiami konkretnej funkcji będącej dostępem przez AJAX. Jedynym sposobem, w jaki mogę to zrobić, jest wykonanie AJAX za pomocą niestandardowego pliku, innego niż admin-ajax.php, a następnie dołączenie wp-load.php w razie potrzeby. Właściwie używam go z powodzeniem od miesięcy. Nazwałem plik `bootstrap.php` i znajduje się on w katalogu 'includes' mojej wtyczki. Wymaganie `wp-load.php` z poziomu `bootstrap.php` załaduje WP dobrze. Dzisiaj zdecydowałem, że potrzebuję większej kontroli, więc spróbowałem opóźnić żądanie `wp-load.php` na czas ładowania plików zawierających funkcje AJAX. Pliki te są wywoływane w `bootstrap.php` za pomocą `include()`, ale wymaganie `wp-load.php` w tych plikach wygeneruje następujący błąd: Uwaga: Zmienna niezdefiniowana: wpdb w .../wp-includes/ ms-settings.php w wierszu 126 Błąd krytyczny: Wywołanie funkcji składowej set_prefix() na obiekcie niebędącym obiektem w .../wp-includes/ms-settings.php w wierszu 126 Problem występuje w trakcie ładowania WP, więc oczywiście wywołanie `require()` wskazuje na poprawną lokalizację pliku `wp-load.php`. Wywołanie go z pliku żądania adresu URL działa dobrze, ale wywołanie go po `include()` psuje całą sprawę... jakieś pomysły dlaczego? Z góry dziękuję!


title: Próba wyświetlenia autorów witryny w karuzeli — obraz użytkownika nie jest wyświetlany wewnątrz tagów li

text:
Próbuję wyświetlić autorów mojej witryny w karuzeli jquery, ale z jakiegoś powodu moje obrazy są wyprowadzane z tagami `li` i nie wiem dlaczego. **Kod** `functions.php` współtwórcy funkcji() { global $wpdb; $authors = $wpdb->get_results("SELECT ID, user_nicename z $wpdb->users ORDER BY display_name"); foreach($authors as $author) { // wyświetl obraz użytkownika dla każdego autora echo '
ID.'">'.userphoto($author-> ID).'
'; } } **Plik szablonu** <?php while ( have_posts() ): the_post(); ?>

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

 <?php endwhile; // koniec pętli. ?> **Wyjście**

 Moim celem jest obraz, który ma być wyprowadzany pomiędzy znacznikami `li`. Pytanie bonusowe, jeśli ktoś zna odpowiedź - jak edytować zapytanie, aby wyświetlali się tylko autorzy, a nie administratorzy strony? Próbowałem dodać klauzulę „WHERE” do zapytania, ale to nie zadziałało. Każda pomoc jest bardzo ceniona, ponieważ jestem WordPress n00b.


title: Wp uzyskaj wszystkie podstrony rodzica za pomocą zapytania wp

text: Oto mój kod $ my_wp_query = new WP_Query(); $all_wp_pages = $my_wp_query->query(array('post_type' => 'strona','post_parent'=>$parid,'orderby'=>'title','order'=>'ASC' )); Wyświetla tylko podstrony pierwszego poziomu. Potrzebuję całą podstronę, podstronę podstrony... i wszystko. Szukałem rozwiązania i mogę uzyskać wszystkie podstrony za pomocą get_pages i wp_list_pages. Ale naprawdę muszę posortować kolejność według niestandardowej wartości meta postu. Więc muszę użyć niestandardowego zapytania. proszę pomóż. Dziękuję


title: usunięcie niestandardowego awatara

text:
Witam, wdrożyłem niestandardowe przesyłanie awatarów z front-endu w moim motywie wordpress. To działa. Użytkownik może dodawać i usuwać niestandardowy awatar. Mój problem polega na tym, że gdy użytkownik wybiera usunięcie swojego niestandardowego awatara, usuwa go z meta awatara, ale przesłane pliki obrazu awatara pozostają na serwerze. To, co chcę zrobić, to wymusić usunięcie plików graficznych awatara z serwera. To jest szablon user_profile.php; <?php globalny $bieżący_użytkownik, $wp_roles; get_currentuserinfo(); ?>
 <?php the_content(); if ( isset($_REQUEST['error']) && $_REQUEST['error'] == 'true' ){ $error = __('Wprowadzone hasła nie pasują. Twoje hasło nie zostało zaktualizowane.', ' kosmomotyw”); }elseif( isset($_REQUEST['success']) && $_REQUEST['success'] == 'true' ){ $success = __('Informacje o Twoim profilu zostały zaktualizowane.', 'cosmotheme'); } if ( $error) echo '
'. $błąd . '
'; if ( isset($success)) echo '
' . $sukces . '
'; ?> <?php if ( !is_user_logged_in() ) : ?>
 <?php _e('Musisz być zalogowany, aby edytować swój profil.', 'cosmotheme'); ?>
 <?php else : ?> <?php ?> <form method="post" id="adduser" action="<?php the_permalink(); ? >">
 <?php $action['grupa'] = 'awatar'; $action['topic'] = 'prześlij'; $akcja['indeks'] = ''; $action['upload_url'] = home_url().'/wp-admin/media-upload.php?post_id=-1&type=image&TB_iframe=true'; $custom_avatar_url = ''; $custom_avatar_meta = get_user_meta($current_user->id, 'custom_avatar', true); if(is_numeric($custom_avatar_meta) && $custom_avatar_meta > 0){ $custom_avatar_url = wp_get_attachment_url($custom_avatar_meta); } ?> <?php _e('Zdjęcie profilowe', 'Cosmotheme'); ?>
<input type="button" class="button-primary front_post_input" id="upload_btn" value="<?php _e('Wybierz plik','cosmotheme' ?>" <?php echo fields::action( $action , 'extern-upload-id' ) ?> />
 <input type="text" name="image" value="<? php echo $custom_avatar_url; ?>" class="generic-record front_post_input" id="avatar_upload" onclick="jQuery('#upload_btn').click();" /> <input type="pole wyboru" name="usuń_awatar" <?php echo $wyłączone ?> wartość="1" id="usuń_awatar"> <? php _e('Usuń awatar', 'motyw kosmetyczny'); ?> <input type="ukryty" name="avatar_id" id="avatar_upload_id" value="<?php echo $custom_avatar_meta; ?>" class="generic-record ogólny-pojedynczy-rekord" />

 <?php _e('Username', 'cosmotheme') ; ?> <input class="text-input" name="user-name" type="text" id="user-name" disabled value="<?php the_author_meta( 'user_login', $current_user- >id ); ?>" />

 <?php _e('Imię', 'motyw kosmetyczny'); ?> <input class="text-input" name="imię" type="tekst" id="imię" <?php echo $wyłączone ?> value="<?php meta_autora( 'user_firstname', $current_user->id ); ?>" />

 <?php _e('Nazwisko', 'motyw kosmetyczny'); ?> <input class="text-input" name="nazwisko" type="tekst" id="nazwisko" <?php echo $wyłączone ?> value="<?php meta_autora( 'user_lastname', $current_user->id ); ?>" />

 <?php _e('E-mail *', 'motyw kosmetyczny'); ?> <input class="text-input" name="email" type="text" id="email" <?php echo $disabled ?> value="<?php the_author_meta( 'user_email', $current_user->id ); ?>" />

 <? php _e('Strona internetowa', 'motyw kosmetyczny'); ?> <input class="text-input" name="url" type="text" id="url" <?php echo $disabled ?> value="<?php the_author_meta( 'user_url', $current_user->id ); ?>" />

 <? php _e('Hasło *', 'Kosmotheme'); ?>  <input class="text-input" name="pass1" <?php echo $disabled ?> type="password" id="pass1" />

 <?php _e('Powtórz hasło *', 'cosmotheme'); ?> <input class="text-input" name="pass2" <?php echo $disabled ?> type="password" id="pass2" />

 <?php _e('Informacje biograficzne', 'cosmotheme') ?> <textarea name= "opis" id="opis" <?php echo $wyłączone ?> rows="3" cols="50"><?php the_author_meta( 'opis', $bieżący_użytkownik->id ); ?></textarea>

 <?php //echo $referer; ?> <nazwa wejściowa="użytkownik aktualizacji" type="prześlij" id="użytkownik aktualizacji" <?php echo $wyłączone ?> class="przycisk wyślij" value="<?php _e('Aktualizuj', 'motyw kosmetyczny'); ?>" /> <?php wp_nonce_field( 'użytkownik-aktualizacji' ) ?> <nazwa wejściowa="działanie" type="ukryte" id="działanie" <?php echo $wyłączone ?> value="użytkownik-aktualizacji" />
 </form> <?php endif; ?>
 A to jest user_profile_update.php; <?php /* Pobranie informacji o użytkowniku. */ globalny $bieżący_użytkownik, $wp_roles; get_currentuserinfo(); /* Załaduj plik rejestracyjny. */ //require_once( ABSPATH .WPINC . '/registration.php' ); /* Jeśli profil został zapisany, zaktualizuj profil. */ if ( 'POST' == $_SERVER['REQUEST_METHOD'] && !empty( $_POST['action'] ) && $_POST['action'] == 'update-user' && ( !defined('IS_FOR_DEMO ' ) || get_the_author_meta( 'user_login', $current_user->id ) != 'demo')) { /* Aktualizacja hasła użytkownika. */ if ( !empty($_POST['pass1'] ) && !empty( $_POST['pass2'] ) ) { if ( $_POST['pass1'] == $_POST['pass2'] ){ wp_update_user ( array( 'ID' => $current_user->id, 'user_pass' => esc_attr( $_POST['pass1']) ) ); }else{ $error = __('Wprowadzone hasła nie pasują. Twoje hasło nie zostało zaktualizowane.', 'cosmotheme'); } } /* Aktualizacja informacji o użytkowniku. */ if ( !empty( $_POST['url'] ) ) update_user_meta( $current_user->id, 'user_url', esc_url( $_POST['url']) ); if ( !empty( $_POST['email'] ) ) update_user_meta( $current_user->id, 'user_email', esc_attr( $_POST['email']) ); if ( !empty( $_POST['imię'] ) ) { update_user_meta( $current_user->id, 'first_name', esc_attr( $_POST['first-name']) ); } if ( !empty( $_POST['nazwisko'] ) ) update_user_meta($current_user->id, 'last_name', esc_attr( $_POST['last-name']) ); if ( !empty( $_POST['opis']) ) update_user_meta( $current_user->id, 'opis', esc_attr( $_POST['opis']) ); if ( !empty( $_POST['avatar_id'] ) && $_POST['avatar_id'] != get_user_meta($current_user->id, 'custom_avatar', true) && empty( $_POST['remove_avatar'])){ update_user_meta( $current_user->id, 'custom_avatar', esc_attr( $_POST['avatar_id']) ); }elseif( !empty( $_POST['remove_avatar']) && $_POST['remove_avatar'] == 1){ update_user_meta( $current_user->id, 'custom_avatar', '-1' ); } /* Przekieruj, aby strona wyświetlała zaktualizowane informacje. */ // if ( !$error ) { $redirect_url = get_permalink(); if(isset($error) && $error != ''){ $msg = array( 'error' => "prawda" ); }else{ $msg = array( 'success' => "prawda" ); } $_url = add_query_arg( $msg , $redirect_url ); wp_redirect ($_url ); Wyjście; // } } ?> Jak widać, jeśli użytkownik sprawdza wpis „usuń awatar”, aktualizuję meta custom_avatar -1, dzięki czemu jest niewidoczny. To działa, ale jak powiedziałem wcześniej, muszę również wymusić usunięcie pliku obrazu z serwera. Możesz mi pomóc? Dziękuję.


title: Blog automatycznie przekierowywany na stronę błędu

text: Mam link do bloga. Ładowało się dobrze, ale teraz, kiedy go otwieram. Przekierowuje do strony błędu.


title: przekierowywanie adresu URL bloga

text: Kiedyś prowadziłem bloga wordpress i forum na serwerze (srv71) z nazwą domeny. A kilka dni temu przeniosłem całą witrynę na nowy serwer (srv14), ale nie zaktualizowałem dns i wyłączyłem poprzedni serwer srv71. Więc odwiedzenie mojej.nazwa.domeny/blog lub moja.nazwa.domeny/phpbb doprowadziłoby do błędu przekroczenia limitu czasu. Próbowałem połączyć mój nowy blog i forum za pomocą adresu IP i wystąpił ten problem. Odwiedzenie forum jest w porządku (mój.ip.addr.14/phpbb), ale blog będzie próbował przekierować mnie do mojej.nazwa.domeny/blog, a nie do mojego.ip.addr.14/blog. Zajrzałem do wp-config.php i znalazłem ten wiersz: define( 'DOMAIN_CURRENT_SITE', 'my.domain.name' ); Myślałem, że go otrzymałem i zamieniłem 'my.domain.name' na 'my.ip.addr.14', a następnie odwiedzenie my.ip.addr.14/blog spowodowało zwrócenie błędu połączenia z bazą danych (cała baza danych, nazwa użytkownika, hasło, nazwa hosta są poprawne w wp-config.php, jestem tego pewien). Następnie skomentowałem tę linię, pozostawiając ją jako domyślną. Potem znowu mój.ip.addr.14/blog przekierował mnie do mojej.nazwa.domeny/blog. Następnie wykonałem kopię zapasową bazy danych blogów, usunąłem .htaccess i wp-config.php oraz ponownie zainstalowałem i wygenerowałem nowe pliki .htaccess i wp-config.php. Teraz my.ip.addr.14/blog pokazywałby pusty blog z „hello world”, domyślnie pierwszym postem. Następnie zaimportowałem bazę danych i ponownie mój.ip.addr.14/blog przekierował mnie do moja.nazwa.domeny/blog. Sprawdziłem tabele „wp_”, takie jak wp_options i wp_site, ale nie znalazłem ręcznie ustawionych wartości (wszystkie NULL) dotyczących adresu URL witryny. Nowo wygenerowany plik .htaccess jest identyczny z poprzednim plikiem .htaccess. Poprzedni plik wp-config.php jest o 8 linii dłuższy niż nowo utworzony (domyślny) wp-config.php: define('WP_ALLOW_MULTISITE', true); define( 'WIELOKROTNY', prawda ); define( 'SUBDOMAIN_INSTALL', fałsz); $base = '/blog/'; define( 'DOMAIN_CURRENT_SITE', 'moja.nazwa.domeny' ); zdefiniuj( 'PATH_CURRENT_SITE', '/blog/' ); zdefiniuj( 'SITE_ID_CURRENT_SITE', 1 ); zdefiniuj( 'BLOG_ID_CURRENT_SITE', 1 ); Ktoś miał do czynienia z podobnymi problemami? Dziękuję!


title: Problem z użyciem explode wewnątrz funkcji zwrotnej add_shortcode()

text:
Explode nie działa zgodnie z oczekiwaniami wewnątrz funkcji wywołania zwrotnego add_shortcode(). **Oto scenariusz:** Mój zaimplementowany kod sortowania wygląda tak: [tabela] nazwa1 = wartość1; nazwa2 = wartość2; name3 = value3 [/table] Którą robię tabelę za pomocą prostego rozbicia. Rozbijanie `;`, aby uzyskać każdy wiersz, a następnie rozbijanie `=`, aby umieścić je w prawej kolumnie. Ale wybuch nie działa dobrze. Rozbija białe znaki po `"`, `-` itd. Przetestowałem tę funkcję poza wordpressem, aby sprawdzić, czy ma problem z pracą z łańcuchem, ale działa dobrze. Oto strona, na której widać tabelę http://computercarebd .com/?product=dell- inspiron-4030 Gdy spojrzysz na tabelę, zobaczysz, że wiersz **Wyświetlanie** jest uszkodzony (utworzono kolejny element tablicy przez `explode();`) po **14.0″** A oto skrót do niego http://pastebin.com/ZYuuNb11 Gdy sprawdzisz stronę główną, zobaczysz dodane funkcje w podglądzie produktu, gdzie użyłem tej samej metody, ale działa dobrze.Użyłem `get_the_content( )` aby uzyskać zawartość, a następnie użył tej samej metody rozbicia.Więc uważam, że muszę zmodyfikować zawartość funkcji wywołania zwrotnego table_shortcode(), aby działała z rozbiciem.Dzięki i daj mi znać, czy jestem wystarczająco jasny.funkcja table_shortcode($atts, $content = NULL){ $content = strip_tags($content); $contents = explode(';', $content); extract(shortcode_atts(array('width' => '370px', 'align' => 'alignright'), $atts)); $table = '
'; foreach($contents as $content){ if(!empty($content)){ $table .= '
'; $row_items = explode('=', $treść); $table .= '
'.(trim($row_items[0])).'
'; $table .= '
'.(trim($row_items[1])).'
'; $table .= '

'; $tabela .= '
'; } } $table .= '
'; return $tabela; }


title: Do jakich plików dziennika zapisuje instalacja WordPress?

text: Śledząc problemy z WordPressem, miałem trudności ze znalezieniem miejsca, do którego WordPress wysyła błędy. Gdzie WordPress domyślnie wysyła błędy? Czy istnieje wiele plików, do których kierowane są różne rodzaje błędów? (Jestem albo strasznie uzdolnionym Googlerem, albo dokumentacja WordPressa jest trudna do przejrzenia).


title: get_posts w menu rozwijanym meta box nie pokazuje najnowszych postów

text: Mam metabox, który skonfigurowałem za pomocą WPAlchemy, który pozwala autorom dodać link do powiązanego posta. Od miesięcy działa dobrze, ale teraz z jakiegoś powodu menu z odpowiednimi postami nie jest aktualizowane. Oto kod w niestandardowym pliku php meta post: <p> <?php $mb->the_field(‘product_video_ID’); ?> <wybierz nazwę=”<?php $mb->nazwa_(); ?>”> <option value=”">Brak</option> <?php globalny $thispost; $myposts = get_posts('numberposts=5000&offset=1′); foreach($myposts as $thispost) : if (in_category( „Filmy wideo”, $thispost)) { ?> <option value=”<?php echo $thispost->ID; ?>” <?php $mb->the_select_state($thispost->ID);?> >< ?php echo get_the_title($thispost->ID); ?></option> <?php } ?> <?php endforeach; ?> <?php setup_postdata($thispost);?> </select> </p> Próbowałem dodać kilka postów testowych w kategorii Filmy o produktach i one też się nie pokazały.Skomentowałem wiersze, które filtrowały dla tej kategorii, a menu rozwijane Meta zaktualizowało się, aby pokazać każdy post… z wyjątkiem tego, który chciałem i nowego testu one.Ktoś ma pojęcie, co może się dziać?Czy jest jakaś część maszyny, która nie jest aktualizowana, którą powinienem naprawić?Dziękuję bardzo!


title: Używanie strony (szablonu bloga) do postów na blogu na stronie głównej jest problematyczne?

text: Kupiłem kilka motywów, które domyślnie nie mają postów na blogu na stronie głównej, tak jak ma to miejsce w normalnych motywach WordPress, takich jak Twenty Eleven. Musiałem stworzyć stronę szablonu Blog, a następnie użyć jej jako strony głównej w Ustawienia -> Czytanie. To działa, z wyjątkiem tego, że strony nie są poprawnie przekierowywane ORAZ numer strony nie jest wyświetlany w tytule strony. Na przykład obie te strony są dostępne z lub bez końcowego ukośnika: * http://www.shanghaiwebhosting.com/page/3/ * http://www.shanghaiwebhosting.com/page/3 I NIGDY nie przekierowują do kanoniczny, tak jak powinny zwykłe strony blogów WordPress. Numer strony nie jest wyświetlany w <title></title>, jest to po prostu „Strona | Shanghai Web Hosting”. Wygląda na to, że zmienna $paged lub $page nie ma przypisanej wartości lub czegoś takiego. Wszystkie te same problemy z inną witryną, w której użyłem szablonu bloga na stronie głównej: * http://www.rackspacereviews.org/page/3/ * http://www.rackspacereviews.org/page/3 Są zarówno dostępne, jak i NIGDY nie przekierowują. Numer strony nie jest wyświetlany w tagu tytułu. Masz pomysł, dlaczego tak się dzieje i jak mogę to naprawić? Czy byłby to problem z motywem, czy jest to błąd WordPressa? Dziękuję!


title: jQuery UI Datepicker nie działa

text:
chcę dodać selektor dat na niestandardowej stronie, ale nie działa. Wersja WP to 3.2.1. Oto ciąg init, którego użyłem w kodzie wp: wp_enqueue_script('jquery'); wp_enqueue_script('jquery-ui-core'); wp_enqueue_script('jquery-ui-datepicker', get_bloginfo('template_url') . '/js/jquery-ui-datepicker.min.js', array('jquery','jquery-ui-core')); wp_enqueue_style('jquery.ui.theme', get_bloginfo('template_url'). '/js/smoothness/jquery-ui-1.8.16.custom.css'); Te enqueque generują ten kod:    <link rel='stylesheet' id='jquery.ui.theme-css' href='http://www.xxxxxxxx.it/wp-content/themes/greyzed/js/smoothness/jquery-ui-1.8. 16.custom.css?ver=3.2.1' type='text/css' media='all' /> W treści strony używam tego kodu:
Dane<input type="text" id="datepicker" name="day" class="text" />
 Selektor dat nie działa. Nie wiem, jak debugować ten problem. Nie robi nic, podobnie jak nie ma jQuery. **UPDATE:** Z Twoją pomocą udało mi się debugować kod. Skrypt umieściłem po div i zmieniłem na:  Ten kod daje mi błąd podczas wywoływania metody datepicker, błąd stwierdza: Uncaught TypeError: Object [object Object] nie ma metody 'datepicker' Jeśli wpiszę jQuery('#datepicker') w konsoli javascript, otrzymam to : [<input type="text" id="datepicker" name="day" class="text">] Nie widzę innych błędów poza tym jednym, wszystkie odniesienia do jQuery działają dobrze . **AKTUALIZACJA 2:** W końcu to działa! musiałem umieścić 'wp_print_scripts' zamiast 'init' i musiałem zmienić położenie kodu init innej wtyczki, która była w konflikcie. Jedynym pozostałym problemem są motywy ... jeśli używam podstawowego motywu w googlecode, działa. Jeśli używam innych motywów (osadzonych w wp lub połączonych z wp_enqueque_style) motyw nie zostanie załadowany .... jeśli sprawdzę wygenerowany html, nie ma śladu linii, która powinna załadować motyw jQuery.


title: Lista kategorii według określonego pierwszego znaku

text: Próbuję uzyskać listę kategorii według określonego pierwszego znaku. Na przykład, jeśli określone zapytanie znakowe to "A", to po prostu chcesz, aby lista kategorii zaczynała się od "A". Jak to jest możliwe?


title: Rozszerz menu rozwijane dwadzieścia dziesięć o jQuery z opóźnieniem onmouseout

text: Chciałbym rozszerzyć menu rozwijane czystego CSS standardowego motywu dwudziestu dziesięciu, aby uwzględnić niewielkie opóźnienie w ukryciu podmenu w trybie myszy. Czy jest jakiś sposób, w jaki moglibyśmy to zrobić za pomocą jQuery? Widziałem kilka rozwiązań wykorzystujących hoverIntent: * Wtyczka jQuery Hoverintent w TwentyEleven Menu * Ulepszenie wbudowanego menu rozwijanego Thesis za pomocą javascript. To nie wydaje się działać dla mnie. Mam wiele poziomów nawigacji, a powyższe rozwiązania wyświetlają wszystkie podpoziomy nawigacji jednocześnie (bez opóźnienia onmouseout). Czy ktoś mógłby mi pomóc? Czy może istnieje wtyczka do tego typu rzeczy? Z góry dziękuję


title: Taksonomia niestandardowa 404

text: Stworzyłem kilka niestandardowych typów postów: add_action( 'init', 'register_post_types' ); function register_post_types() { register_post_type( 'jobsearch-post', array( 'labels' => array( 'name' => __( 'Wyszukuje posty' ), 'singular_name' => __( 'Post wyszukiwania ofert pracy' ) ) , 'public' => true, 'has_archive' => true, 'rewrite' => array( 'slug' => 'jobsearch' ) ) ); register_post_type( 'recruiters-post', array( 'labels' => array( 'name' => __( 'Recruiters Post' ), 'singular_name' => __( 'Recruiter Post' ) ), 'public' => true , 'has_archive' => true, 'rewrite' => array( 'slug' => 'recruiters' ) ) ); } Które wydają się działać poprawnie. Mam jednak kilka powiązanych taksonomii: add_action( 'init', 'register_taxonomies' ); function register_taxonomies() { register_taxonomy( 'recruiters-tax', array ( 0 => 'recruiters-post', ), array( 'hierarchical' => true, 'label' => 'Taksonomia rekruterów', 'show_ui' => true, 'query_var' => true, 'rewrite' => array( 'slug' => '' ), 'singular_label' => 'Taksonomia rekruterów' ) ); register_taxonomy( 'jobsearch-tax', array ( 0 => 'jobsearch-post', ), array( 'hierarchical' => true, 'label' => 'Taksonomia wyszukiwania ofert pracy', 'show_ui' => true, 'query_var ' => true, 'rewrite' => array( 'slug' => '' ), 'singular_label' => 'Taksonomia wyszukiwania ofert pracy') ); } Jak widać są one hierarchiczne. Niestety, 404 otrzymuję TYLKO, jeśli próbuję uzyskać dostęp do pozycji w ramach taksonomii rekruterów, np. `http://localhost:8888/recruiters/some-category` Mogę uzyskać dostęp do ofert pracy: `http://localhost: 8888/jobsearch/some-category` Mogę również uzyskać dostęp do głównych niestandardowych typów postów: `http://localhost:8888/recruiters` `http://localhost:8888/jobsearch` Czy jest coś, czego mi brakuje? uniemożliwiając mi dotarcie do zagnieżdżonych taksonomii tylko z taksonomii rekruterów? Zauważ, że ciągle naciskam przycisk „Zapisz zmiany” w ustawieniach permalinka pomiędzy próbami uruchomienia tego. To doprowadza mnie do szału!


title: Pobierz listę wszystkich niestandardowych identyfikatorów taksonomii

text: Utworzyłem niestandardową taksonomię o nazwie Lokalizacja, a następnie dodałem New Jersey, Nowy Jork itd. Czy istnieje funkcja Wordpress, która pobiera listę wszystkich identyfikatorów w lokalizacji, podobnie jak w przypadku funkcji get_all_category_ids()?


title: SQL zwracany przez Wp_Query ma wp_posts.ID = -1

text: Mam niestandardową pętlę opartą na tych argumentach (poniżej) iz jakiegoś powodu po uruchomieniu zwracany SQL ma ten fragment: ... AND wp_posts.ID = -1 ... I nie otrzymuję żadnych wyników z bazy danych. Jeśli uruchomię zapytanie w bazie danych bez tego fragmentu, otrzymuję wyniki, których potrzebuję. Czy ktoś mógłby wskazać, co jest nie tak z listą argumentów, która powoduje takie zachowanie? $args = array ( 'post_status' => 'draft', 'posts_per_page' => 10, 'category_name' => $language_sql_param, //naprawione 'meta_query' => array( array( 'key' => 'review_rating', 'value' => '3', 'compare' => '>', 'type' => 'NUMERIC', ), ), 'cache_results' => false, 'update_post_meta_cache' => false, 'update_post_term_cache' => false, 'suppress_filters' => true, 'meta_key' => 'review_id', 'orderby' => 'meta_value_num', ); $wp_query = nowe WP_Query ($args ); # Poprawione pytanie: filtruję posty na podstawie kategorii, do których też należą, w moim przypadku są to kody krajów. Oto kod SQL generowany przez WP, gdy ustawiam `$language_sql_param` na to: $language_sql_param = 'us,gb,ca,au,ie' Działa dobrze i zwraca identyfikatory moich postów dla krajów anglojęzycznych. SELECT SQL_CALC_FOUND_ROWS wp_posts.ID FROM wp_posts WEWNĘTRZNE DOŁĄCZENIE wp_term_relationships WŁ. (wp_posts.ID = wp_term_relationships.object_id) WEWNĘTRZNE DOŁĄCZENIE wp_postmeta WŁ. (wp_posts.ID = wp_postmeta. =1 AND ( wp_term_relationships.term_taxonomy_id IN (20,21,28,36,37)) AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'draft') AND (wp_postmeta.meta_key = 'review_id' AND (mt1 .meta_key = 'review_rating' AND CAST(mt1.meta_value AS SIGNED) > '3') ) GROUP BY wp_posts.ID ORDER BY wp_postmeta.meta_value+0 DESC LIMIT 0, 10 Kiedy ustawię `$language_sql_param = 'de,ch '"`, otrzymuję ten SQL: SELECT SQL_CALC_FOUND_ROWS wp_posts.ID FROM wp_posts WEWNĘTRZNE DOŁĄCZENIE wp_term_relationships WŁĄCZONE (wp_posts.ID = wp_term_relationships.object_id) WEWNĘTRZNE DOŁĄCZENIE wp_postmetapost WŁĄCZONE (wp_postmetapost.ID = meta.post_id) INNER JOIN wp_postmeta AS mt1 ON (wp_posts.ID = mt1.post_id) WHERE 1=1 AND wp_posts.ID = -1 AND ( wp_term_relationships.term_taxonomy_id IN (27,34) ) AND wp_posts.'_type = ' AND (wp_posts.post_status = 'draft') AND (wp_postmeta.meta_key = 'review_id' AND (mt1.meta_key = 'review_rating') AND CAST(mt1.meta_value AS SIGNED) > '3') ) GRUPOWANIE WG wp_posts.ID ZAMÓWIENIE wp_postmeta.meta_value+0 DESC LIMIT 0, 10 SQL zawiera dodatkowe `ORAZ wp_posts.ID = -1`. Wygląda na to, że WordPress poprawnie generuje klauzulę IN dla filtrowanych kategorii, tak jak w przypadku `AND (wp_term_relationships.term_taxonomy_id IN (27,34))`, ale ponieważ WordPress w jakiś sposób dodaje `AND wp_posts.ID = -1`, brak postów zwrócony. Skąd pochodzi `AND wp_posts.ID = -1`?


title: Czy mogę dynamicznie utworzyć łącze do strony ustawień/opcji wtyczki z opisu wtyczki?

text: Obecnie w opisie mojej wtyczki zapisuję na stałe... > Aby dostosować opcje  admin.php">kliknij tutaj Czy istnieje dynamiczna metoda wywoływania strony opcji wtyczki?


title: Zmiana linku w tytule RSS na link do kanału zamiast do bloga

text: Udaremnienie! Czy można łatwo zmienić link do tytułu RSS za pomocą widżetu RSS, aby połączyć się z kanałem zamiast z samym blogiem? To nie może być takie trudne.. Mógłbym to łatwo zakodować, ale chcę, aby było to tak modułowe, jak to tylko możliwe.


title: Automatyczne dodawanie niestandardowego pola do niestandardowych typów stron

text: Mam skonfigurowany niestandardowy typ strony o nazwie „Produkty” i chcę, aby każdy z tych postów automatycznie zawierał wiele niestandardowych pól, aby skonfigurować tabelę funkcji/cen dla poszczególnych stron produktów. Czy można to zrobić w jakiś sposób? Dziękuję.


title: Opcje motywu Wordpress i wstaw domyślną wartość do serializacji danych

text: Jak dodać wartości domyślne dla opcji motywu? Obecnie używam podstawowej opcji z tej strony. Przykład będzie przechowywał wartość opcji w serializacji w bazie danych. Kiedy aktywujemy motyw, nie ma żadnej wartości w bazie danych za pierwszym razem, dopóki nie klikniemy przycisku Zapisz zmiany. Teraz chcę dodać domyślną wartość, gdy motyw aktywuje coś takiego. opcja_id blog_id nazwa_opcji opcja_wartość autoload 152 0 theme_data a:16:{s:12:"html_doctype";s:1:"1";s:14:"header_fav... tak Lub jak zmienić bieżącą opcję próbki, aby nie zapisać w serializacji do bazy danych identyfikator_opcji identyfikator_blogu nazwa_opcji wartość_opcji automatyczne ładowanie 152 0 html_doctype 1 tak Daj mi znać.


title: Zmiana ceny wyświetlania WooCommerce na podstawie roli użytkownika i kategorii

text: Chcę wyświetlić inną cenę na podstawie roli użytkownika (hurtownik, sprzedawca itp.) ORAZ na podstawie kategorii. Dostępna jest wtyczka dynamicznej wyceny, która wyświetla te rabaty po dodaniu produktu do koszyka, ale nie na samej stronie. Czy istnieje sposób na użycie filtra lub akcji, aby sprawdzić poziom użytkownika, sprawdzić kategorię towaru, a następnie dynamicznie zmienić cenę?


title: Niestandardowe logowanie z Ajaxem nie działa z IE

text: Tworzę własny niestandardowy login w wordpressie za pomocą funkcji wp_signon. Za każdym razem, gdy użytkownik wprowadza swoje dane uwierzytelniające, inna strona jest wywoływana przy użyciu ajax. Na tej stronie sprawdzam poświadczenia użytkowników i loguję użytkownika za pomocą funkcji wp_signon. Następnie wysyłane jest potwierdzenie, a bieżąca strona przechwytuje je i wyświetla, że użytkownik jest pomyślnie zalogowany. Kod działa w Chrome i Firefox, ale nie działa w IE. To jest kod w pliku AJAX. Bieżąca strona otrzymuje odpowiedź, że użytkownik jest zalogowany, ale kiedy odświeżę, nadal pokazuje, że użytkownik nie jest zalogowany. :( zmaga się z tym przez kilka dni. Pomóż mi proszę $creds = array(); '] = $user; $creds['user_password'] = $password; $creds['remember'] = $remember; $user = wp_signon($creds, true); if ( is_wp_error($user) ){ echo " Nieprawidłowa nazwa użytkownika lub hasło"; } else { $current_user = wp_get_current_user(); $userid=$current_user->ID; mysql_pconnect($dbhost,$dbuser,$dbpass) or die ("Nie można połączyć się z serwerem MySQL"); $ dbquerry= 'wybierz `login` z wp_users gdzie user_login="'.$_GET['user'].'"'; $result=mysql_db_query($dbname,$dbquerry); list($login)=mysql_fetch_array($result) ;if($login==1) { echo "change"; } else { echo "success"; } } Ten kod działa dobrze w Chrome i Firefox, a nie w IE


title: Taksonomie niestandardowe nie zachowują hierarchii podczas importowania z jednej witryny do drugiej

text: Na mojej stronie mam "listę" typu Custom Post, która ma hierarchiczną taksonomię "lokalna". Terminy w tej taksonomii mają postać Stany > Miasta. Na przykład „Waszyngton” jest terminem nadrzędnym, a Arlington, Auburn, Davenport itp. mogą być jego taksonomiami podrzędnymi. Teraz, gdy eksportuję i importuję ten niestandardowy typ postu do innej witryny, moje taksonomie poziomu podrzędnego stają się taksonomiami najwyższego poziomu, nie zachowują już hierarchii. Użyłem kodu w functions.php do stworzenia tego, bez wtyczek. Co ja robię źle?


title: Jak wyświetlić podpis obrazu w niestandardowym typie postu ...?

text:
Postępuję zgodnie z tym kodem, aby utworzyć system galerii zdjęć: $the_imgs = get_custom_field('gallery_img:to_array'); foreach( $the_imgs as $img ) { list( $url, $width, $height ) = wp_get_attachment_image_src( $img, 'thumbnail' ); echo '
'; } ale chcę pokazać moje zdjęcia z podpisami, ktoś może mi pomóc...???


title: Wyświetlanie niestandardowego typu postu według pierwszej litery za pomocą niestandardowej taksonomii

text:
Próbuję stworzyć stronę na mojej witrynie WordPress, aby wyświetlać wszystkie rodzaje żywności za pomocą 26 pętli. Każda pętla musi zapętlać literę alfabetu, a na górze strony znajdują się linki, które będą odsyłać do pól zakotwiczeń wokół pętli. Czyli to co chcę żeby było wyświetlane to mniej więcej tak: **NAV:** _a b c d e ...(i tak dalej) ... z_ **A** Wszystkie elementy zaczynające się na literę A **B** Wszystkie elementy zaczynające się na literę B I tak dalej.. * * * Po przeczytaniu tego tematu: Wyświetlać wszystkie posty zaczynające się na podaną literę? Postanowiłem użyć innych terminów dla listów. W tym celu stworzyłem niestandardowy typ postu o nazwie „waaier” Tam mam niestandardową taksonomię o nazwie „waaier_abc” I tam różne terminy dla każdej litery o nazwie „waaier_a”, „waaier_b” i tak dalej myślę, że jest to najbardziej logiczny sposób 26 pętli pod sobą, ponieważ chcę, aby każda litera miała inny div. Wypróbowałem tę pętlę, ale nie wyświetla ona niczego, również nie instrukcja else ..
 <?php query_posts(array('post_type' => 'waaier', 'waaier_abc' => $term->waaier_a ) ); ?> <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <?php koniec; else: ?>
<?php _e('Przepraszam, de letter a bevat nog geen inhoud.'); ?>
 <?php endif; ?>
 Czy ktoś ma pomysł na inną pętlę, która wyświetlałaby terminy z określonego typu postu LUB wyświetlając posty z określoną pierwszą literą określonego typu postu. Przepraszam, jeśli mój angielski wygląda dziwnie


title: Problem ze zrozumieniem i używaniem filtrów i działań WordPress

text: Mam własną wtyczkę WordPress, którą opracowałem. Wtyczka to pakiet widżetów zawierający kilka niestandardowych widżetów. **Scenariusz** Wtyczka pozwala na niestandardowe style css poprzez tworzenie niestandardowego pliku CSS za pomocą WordPress AJAX. Oto jak generuję niestandardowy arkusz stylów CSS AJAX: **Generuj plik CSS WordPress AJAX** /** * Umieść arkusz stylów widżetów w kolejce */ public function add_awp_css(){ wp_enqueue_style($this->hook, plugins_url('advanced-widget -pack/css/advanced-widget-pack.css' , dirname(__FILE__)), array(), '', 'screen'); wp_enqueue_style( $this->hook.'-custom', add_query_arg( array( 'action' => 'advanced_widget_pack_gen_css', /* Uwzględnij to, aby upewnić się, że zmiany nie są buforowane przez przeglądarkę */ 'layout' => substr( md5(serialize($this->hook)), 0, 8) ), site_url() ), array($this->hook), $this->version ); } To działa świetnie. Teraz funkcja, którą wywołuje powyższa kolejka, jest następująca: **Funkcja wywołania zwrotnego dla pliku CSS WordPress AJAX** /** * Echo CSS dla stylu niestandardowych widżetów */ public function advanced_widget_pack_css() { if(empty($_GET ['akcja']) || $_GET['akcja'] != 'advanced_widget_pack_gen_css') return; if(!isset($_GET['ver'])) return; $css_text = ''; /* ============================= */ /* Widżet archiwum */ /* ========= ==================== */ if(awp_option('archives_style_border') == 'true'){ $css_text .= ".awp_archive_widget { border:".awp_option ('archives_style_border_width').' '.awp_option('archives_style_border_style').' '.awp_option('archives_style_border_color')." !ważne }\n"; $css_text .= awp_option('archives_style_border_radius') == 'okrągły' ? '.awp_archive_widget { -moz-border-radius:5px; -webkit-obramowanie-promień:5px; border-radius:5px }' : ''.''." \n"; } $css_text .= ".awp_archives_colour { color:".awp_option('awp_archives_dropdown_inst_colour')." !ważne }\n"; /** * Filtruj nieprzetworzoną tablicę CSS */ $css_text = apply_filters('advanced_widget_pack_css', $css_text); header("Typ treści: tekst/css"); echo $css_text; Wyjście(); } Ta powyższa funkcja również działa dobrze. Wyprowadza plik CSS. **Widżet** W aktualnym pliku widgetu WordPressa tworzę dodatkowy kod CSS, który jest generowany. Oto odchudzona wersja funkcji „widget” w klasie widżetów. class Advanced_Widget_Pack_Widget_Archives extends WP_Widget { public function __construct(){} public function form($instance) {} public function widget($args, $instance){ extract($args); // Cały kod widżetu jest zawarty tutaj.... **/* Stylizacja dla shortcode */ if($is_awp_sc == 'true'){ /* Generuj unikalny identyfikator if shortcode - używany do stylizacji */ $sc_id = mt_rand(1, 100000); $sc_css = ".awp_archive_widget_sc".$sc_id." { border:".$awp_archives_border_width.' „.$awp_archives_border_style”. '.$awp_archives_border_color." !ważne }\n"; $sc_css .= $awp_archives_border_radius == 'okrągły' ? '.awp_archive_widget_sc'.$sc_id.' { -moz-promień-granicy:5px; -webkit-obramowanie-promień:5px; border-radius:5px }' : ''.''." \n"; $sc_css .= ".awp_archive_widget_sc".$sc_id."li a, .awp_archive_widget_sc".$sc_id."li { font-size:".$awp_archives_font_size." !ważne }\n"; $sc_css .= ".awp_archive_widget_sc".$sc_id." li a { color:".$awp_archives_link_std." !ważne }\n"; $sc_css .= ".awp_archive_widget_sc".$sc_id." li a:hover { color:".$awp_archives_link_hover." !ważne }\n"; }** // Kod widżetu jest wyprowadzany tutaj } } W powyższym kodzie usunąłem cały niepotrzebny kod, aby zaoszczędzić miejsce i po prostu zostawiłem kod, którego potrzebuję, aby zademonstrować moje wymagania. **Problem** To, co chcę zrobić, to przekazać kod **$sc_css** do funkcji **advanced_widget_pack_css()** i dołączyć go na końcu dynamicznie generowanego kodu CSS. Zastosowałem filtr w funkcji advanced_widget_pack_css(), jednak nie rozumiem, jak przekazać niestandardowo wygenerowaną zawartość z klasy widżetu do tej funkcji. Nie chcę powtarzać strony CSS, ale wolałbym dołączyć ją do już utworzonego niestandardowego pliku CSS. Czytałem, że można to zrobić za pomocą „działań” lub „filtrów” WordPressa, ale nie mogę się nad tym zastanowić. Każda pomoc byłaby bardzo mile widziana. Dziękuję.


title: Link do menu do wszystkich postów (w tym wszystkie kategorie)

text: Jak w WordPressie dodać łącze menu do archiwum postów? Widzę, że mogę dodać linki do archiwum kategorii, ale co, jeśli chcę mieć archiwum wszystkich postów (a więc także wszystkie kategorie?)


title: Ustaw administratora użytkownika w witrynie podkatalogu i współtwórcę witryny głównej w sieci wielostanowiskowej

text: Posiadam sieć wielostanowiskową. Strona główna wyświetla aktualności. Witryny podkatalogu mają administratorów i nazywam je administratorem podstrony. Jeśli administrator podwitryny chce publikować w witrynie głównej, chcę, aby logował się tylko jako współtwórca, aby administrator główny mógł przejrzeć swoje wiadomości przed opublikowaniem. Czy można dostosować rolę administratora podstrony, aby mógł go używać do logowania się jako kontrybutor do strony głównej? Na przykład podwitryna-administrator-A będzie miała 2 role: 1. administratora do swojej podwitryny 2. współautora witryny głównej.


title: Sprawdź, czy nie został już utworzony niestandardowy typ posta

text: Tworzę wtyczkę, która tworzy nowy niestandardowy typ postu. Jak mogę sprawdzić, czy niestandardowy typ posta został już utworzony (być może przez użytkownika w functions.php do innego użytku)? Właściwie chciałbym wiedzieć, jak najlepiej się do tego zabrać, może dodać przedrostek do mojego niestandardowego typu postu, aby był jak najbardziej unikalny?


title: Niespójność przepisywania adresów URL między instalacjami WP

text: Moja wtyczka rejestruje wiele niestandardowych typów postów, które są pogrupowane w różne typy obiektów biznesowych. Adresy URL są przepisywane w postaci: nebfm/busines_object/post_slug/post_name. W mojej lokalnej konfiguracji WAMP wszystko działa poprawnie. Adresy URL są przepisywane w odpowiedniej formie, są dokładnie tłumaczone i pobierają odpowiednie posty. Kiedy przesyłam swój kod na serwer testowy, wszystko się psuje. Wszystkie linki do CPT zwracają błędy 404. Kiedy var_dump zawartość żądania na serwerze testowym otrzymuję tylko 404, co prowadzi mnie do podejrzenia, że nie rozpoznaje żadnej ze zmiennych zapytania. Jestem naprawdę zakłopotany. Na obu serwerach wielokrotnie opróżniałem reguły przepisywania, więc jestem prawie pewien, że to nie jest źródło problemu. Na serwerze testowym mogę użyć domyślnych reguł przepisywania WP, więc zakładam, że są zainstalowane niezbędne moduły Apache. Oba serwery działają w PHP 5.x


title: Importer nie zaimportował postów w formacie „dzień i imię”

text: Prowadziłem blog, w którym wpisy były oznaczone jako „dzień i imię”. Po wyeksportowaniu tego bloga i zaimportowaniu go do nowej instalacji WordPressa nie widzę postów w tym formacie, tylko w domyślnym: http://blog.xxxxx.com/main/?p=123 Przechodzę też do poprzedniego strony (http://blog.xxxxx.com/main/page/2/) nie działają. Czy to znany problem z rozwiązaniem?


title: Wyświetl określoną kategorię na stronie

text: Czy istnieje sposób na wyświetlenie określonej nazwy kategorii na stronie za pomocą shortcode? **Edycja:** Mam wtyczkę, która wyświetla posty na stronach za pomocą shortcode `[display-post id=id of post]`. Chciałbym mieć podobną wtyczkę lub mogę powiedzieć ten sam _plugin/shortcode_ z jedyną inną. Różnica polega na tym, że wyświetli nazwę jakiejś kategorii z kategorii. Więc wyobrażam sobie, że mam ten krótki kod `[nazwa-kategorii id=id pewnej kategorii]`.


title: jak dołączyć trochę kodu html w sekcji nagłówka wtyczki Wordpress? otrzymuję błąd

text:
Kiedy dołączam jakiś div do tworzonej wtyczki, pojawia się błąd podczas aktywacji wtyczki. _"Wtyczka wygenerowała 33 znaki nieoczekiwanego wyniku podczas aktywacji. Jeśli zauważysz wiadomości „nagłówki już wysłane”, problemy z kanałami dystrybucji lub inne problemy, spróbuj dezaktywować lub usunąć tę wtyczkę."_ Chociaż wtyczka działa na stronie, ale rozumiem błąd podczas aktywacji. oto kod wtyczki. Chcę, żeby tekst wyświetlał się na górze strony. Rozumiem, że muszę użyć kilku haczyków, ale którego? tutaj jest link pokazujący czego chcę. http://wsoplugins.com/wp-content/uploads/2012/04/Captur.png <?php /* Nazwa wtyczki: test URI wtyczki: Opis: test Autor: Ronny Kibet URI autora: wersja: 1.0 */ ?>
witaj


title: Przeszukaj bazę danych i zwróć wynik w przetłumaczonych stronach

text:
Od jakiegoś czasu mam problem i nie mogę go rozwiązać samodzielnie. Zrobiłem stronę internetową, ta strona jest wielojęzyczna i została wykonana w wordpressie. Na mojej stronie „album ze zdjęciami”, kiedy sortuję elementy w domyślnym języku (angielskim) wszystko działa dobrze, jednak jeśli zmienię tłumaczenie na inne (np. francuskie), zmieni się nazwa kategorii i oznaczone elementy nie pojawią się nie więcej. http://madebysylvie.be/collection W mojej bazie danych udaje mi się znaleźć tabelę i wiersze każdej kategorii, chcę mieć do niej dostęp w innym języku, każda z nich ma unikalny identyfikator. Wiem, że muszę pobrać identyfikator z bazy danych każdej kategorii i zwrócić go do mojego skryptu PHP. To jest mój kod, który wyświetla sekcję
 <?php // Pobierz taksonomię $terms = get_terms('filter', $args); // ustaw licznik na ilość kategorii w naszej taksonomii $count = count($terms); // ustaw wartość licznika na 0 $i=0; // przetestuj czy licznik ma jakieś kategorie if ($count > 0) { // podziel każdą z kategorii na poszczególne elementy foreach ($terms jako $term) { // zwiększ licznik o 1 $i++; // przepisz wynik dla każdej kategorii $term_list .= '
ślimak .'">' . $term->nazwa . '
'; // jeśli licznik jest równy i to wypisz puste if ($count != $i) { $term_list .= ''; } else { $term_list .= ''; } } // wydrukuj każdą z kategorii w naszym nowym formacie echo $term_list; } ?> Jednak nie jestem wystarczająco dobry, aby zrobić to sam i byłbym bardzo szczęśliwy, gdyby ktoś mógł mi w tym pomóc. Dziękuję Ci


title: Przepisywanie skrótów galerii WordPress za pomocą karuzeli Bootstrap

text: W ostatnim osobistym projekcie tematycznym do publikowania postów podróżniczych chciałem mieć galerię obrazów w stylu suwaka, a nie standardową kolumnę/listę, której używa WordPress po wyjęciu z pudełka. Podoba mi się wygląd i sposób działania karuzeli Bootstrap, więc moim wyzwaniem było: Czy możliwe jest zmiksowanie skrótu galerii WordPress za pomocą karuzeli Bootstrap? Poniżej przedstawiłem swoje rozwiązanie, ale chciałbym wiedzieć, co inni ludzie mogą zasugerować, aby ulepszyć kod i sprawić, by działał lepiej.


title: linki root-względne dla wielu zaparkowanych domen

text: Mam pięć domen wskazujących na tę samą instalację serwera/wp. nazwy domen są ważne, a moi goście muszą mieć możliwość pozostania w preferowanej domenie podczas przeglądania mojej witryny. jak skonfigurować wp (lub .htaccess lub...), aby wszystkie linki wskazywały na domenę/host określony przez odwiedzającego? teraz, jeśli ustawię Dashboard/General/Site Address na **site-A.com** i wczytam witrynę jako **site-B.com** , linki będą nadal wskazywać **site-A. com** zamiast **site-B.com** ; np. załaduj `http://site-B.com/blog/to-to-moj-dom/`. linki na załadowanej stronie nadal wskazują na **site-A.com** zamiast na **site-B.com**. w moim starym systemie MT byłem w stanie zdefiniować wszystkie linki jako powiązane z rootem, więc wszystkie linki wskazywały na bieżącą domenę. czy jest to możliwe z WP? okrzyki, Gregory


title: Jak wyświetlić wszystkie określone typy postów, które mają taksonomię i określony termin

text:
mam typ postu o nazwie directory_listing, mam taksonomię o nazwie „miejsce” i mam warunki w tym podatku dla miejsca1 i miejsca2. Muszę wyświetlić wszystkie posty „directory_listing”, które używają terminu miejsce2 taksonomii „miejsce” w niestandardowym szablonie strony. to jest tak daleko, jak mam, jestem zgubiony. <?php $pages = get_posts(array( 'post_type' => 'directory_listing', 'numberposts' => -1, 'tax_query' => array( 'taxonomy' => 'place', 'field' => 'slug', 'terms' => ('place2'), 'include_children' => false ))) ); foreach ($pages as $page) { echo $pages->post_title . '
'; echo $pages->post_content . '
'; echo $pages->slug . „

”; } ?>


title: Jak ustawić link Czytaj więcej?

text: Przeczytałem inne na stronie i nie znalazłem działającego rozwiązania. Używam motywu 20-11 i próbowałem użyć `<--more-->` (w wersji wizualnej i html) bez powodzenia, używając fragmentów i wszystkiego, co udało mi się znaleźć. Nic nie działa. Przeglądam stronę ze strony głównej/głównej. Jak utworzyć link czytaj więcej za pomocą jednego lub dwóch akapitów tekstu?


title: WordPress "Ukryj WP" daje mi błąd po zalogowaniu administratora

text: Niedawno zapłaciłem freelancerowi, aby zainstalował efekt „ukryj WP”, który ukrywa fakt, że korzystam z WordPressa. Specjalnie poprosiłem o zainstalowanie czegoś z takim efektem: http://codecanyon.net/item/hide-my-wp-no-one-can-know-you-use-wordpress/4177158 Moja domena to http://www. catsbuzz.com. Freelancer wykonał instalację, a przejście do catsbuzz.com/wp-admin dało błąd 404. A kiedy wszedłem na catsbuzz.com/administrator, mogłem się zalogować i korzystać z pulpitu nawigacyjnego. Wiedziałem, że coś jest dziwnego, gdy nagle moje konto AdSense zostało zbanowane. Dzisiaj wszedłem na stronę catsbuzz.co/administrator, aby się zalogować. Strona logowania działa, ale po wpisaniu nazwy użytkownika/hasła i kliknięciu „zaloguj się” , przechodzi do strony 404.. I przejście do catsbuzz.com/wp-admin lub /wp-admin.php oba daje błąd 404. Więc teraz utknąłem, nie mogąc wejść na deskę rozdzielczą. Proszę o pomoc.. W ogóle nie mam żadnej wiedzy na temat rozwiązania tego problemu.. Mam do czynienia z uzyskaniem zwrotu pieniędzy, ale tymczasem naprawdę muszę naprawić ten błąd. Po prostu muszę być w stanie zalogować się do mojego pulpitu WordPress, nie obchodzi mnie już efekt „Ukryj WP”. Czy ktoś może mi pomóc? Z góry każdemu dziękuję.


title: root dostaje nieudane logowanie przy próbie instalacji motywu przez ftps

text: Poza wordpressem mogę ftp z hasłem i nazwą użytkownika, rootem i zobaczyć oczekiwane efekty. Kiedy od administratora z wordpress próbuję pobrać i zainstalować motyw, prosi o poświadczenia i jeśli podam jedną parę nazwy użytkownika i hasła, otrzymuję komunikat „Nie udało się połączyć z serwerem FTP **___ ____**:22” Gdy podam dowolną inne poświadczenia, które natychmiast daje "Nie udało się połączyć z serwerem FTP **___ ___**:21" Jestem zaznajomiony z SFTP, ale nie pracowałem z FTPS. Jaka jest różnica i co mogę zainstalować na moim ubuntu vps, aby pracować z wordpressem? Albo jak mogę poprosić wordpressa o pracę z istniejącą konfiguracją. Czy możesz wskazać mi jakieś HOWTO, które powie, jak bezpiecznie tunelować ftp przez ssl? Dziękuję!


title: Dlaczego nie mogę wywołać funkcji (członkowej) z poziomu foreach?

text: Pracuję z wtyczką o nazwie media tags... Foreach wygląda następująco (w największym uproszczeniu) foreach($mediatags as $mediatag){ $args = 'media_tags=animals&numberposts=10&return_type=li&size=thumbnail'; $media_items = get_attachments_by_media_tags($args); echo $media_items; }; uruchomienie dokładnie tego samego kodu poza foreach: $args = 'media_tags=animals&numberposts=10&return_type=li&size=thumbnail'; $media_items = get_attachments_by_media_tags($args); echo $media_items; Działa świetnie, ale kiedy uruchamiam go w foreach otrzymuję następujący błąd: Wywołaj funkcję członkowską get_attachments_by_media_tags() na obiekcie niebędącym obiektem w /home/nuagency/dev.nuagency.se/wp-content/plugins/media- tags/mediatags_template_functions.php w wierszu 128 Przechodząc do wiersza 128 w tym pliku widzę: function get_attachments_by_media_tags($args='') { global $mediatags; return $mediatags->get_attachments_by_media_tags($args); }


title: Potrzebujesz pomocy w naprawie problemu z przekierowaniem 301

text: Miałem problemy z moją stroną i w rezultacie wykonałem test indeksowania w SEOmoz. Test wykrył stałe przekierowanie 301 wszystkich stron w witrynie i wygląda na to, że są one przekierowywane z powrotem do siebie? Po zakończeniu indeksowania mojej witryny odkryłem, że do adresu URL każdej z tych stron dodano ogromną ilość tego, co wygląda na uszkodzone dane: https://www.getyourphotosoncanvas.com/%7Egetyouv4/%7Egetyouv4/contact- us.html 301 przekierowuje do https://www.getyourphotosoncanvas.com/%7Egetyouv4/contact- us.html Następnie następuje długa lista przekierowań, z których każde dodaje kolejną linię, np.: domain/7Egetyouv4/%7Egetyouv4/%7Egetyouv4 /../%7Egetyouv4/%/contact-us.html Ta powtarzająca się część, `%7Egetyouv4`, trwa w nieskończoność... Skróciłem ją dla posta i usunąłem nazwę domeny, aby zapobiec trzeciemu linkowi (limit postów) . Wiem, że to musi być problem. Wsparcie Bluehost mówi, że nie pokazują przekierowań 301, to może to być problem w pliku WP `xmlrpc.php`? Jestem nowicjuszem, czy ktoś może mi powiedzieć, co to wszystko znaczy? Żeby wyjaśnić, nie ustawiałem przekierowań, nie potrzebuję przekierowań, to po prostu pojawiło się bez mojej wiedzy. Niektórzy zasugerowali włamanie? Co ważniejsze, czy możesz mi powiedzieć, jak to naprawić?


title: Fragment dla każdego typu posta i dla is_front_page

text: Staram się dostosować fragment do każdego typu postu, a zwłaszcza na pierwszą stronę. function isacustom_excerpt_length($długość) { global $post; if (is_front_page() || is_home()){ if ($post->post_type == 'news') return 200; else if ($post->post_type == 'projekty') return 150; else if ($post->post_type == 'term') return 75; w przeciwnym razie zwróć 80; }else { if ($post->post_type == 'news') return 20; else if ($post->post_type == 'projekty') return 80; else if ($post->post_type == 'term') return 75; w przeciwnym razie zwróć 80; }}; add_filter('długość_wypisu', 'długość_wypisu_isacustom'); Problem polega na tym, że if (is_front_page() || is_home()) nigdy nie jest prawdziwe. dzięki za pomoc!!!


title: Style tekstu WP nie przechodzą do rzeczywistego postu

text:
Krótko mówiąc, pracuję nad niestandardowym motywem i owijam haki WP na wspomniany motyw itp. I zauważyłem, że podczas pisania postu / strony itp. Mówi się na przykład, że chcę zrobić słowo pogrubione / kursywy itp. To zastosowane style się nie pojawiają. Na przykład, powiedzmy, że wybieram słowo, klikam ikonę „B”, aby pogrubić słowo, wizualnie wyświetla słowo jako pogrubione w edytorze, ale kiedy zapisuję i wyświetlam podgląd strony, tekst jest normalny. Na słowie nie ma żadnych widocznych stylizacji. Próbowałem również przejść do panelu HTML i ręcznie zastosować tagi HTML, takie jak `<b></b>` lub `<i></i>` itp. I tak samo zapisuję i podglądam stronę oraz tekst wygląda tak, jakby nie zastosowano żadnego stylu. Jakieś pomysły co się dzieje? Pewnie czegoś mi brakuje? Wszelkie wskazówki, linki itp. Pokornie doceniam. Z góry dziękuję. ***edytuj: to jest moja obecna pętla postów wp <?php while( have_posts() ) : the_post() ?>

<a href=" <?php the_permalink(); ?>"><?php the_title(); ?>

<?php the_post(); ?>

<?php the_content(); ?>

 <?php endwhile; ?>


title: Czyszczenie pola „Pole wyboru” formularzy grawitacyjnych powiązanego z dużą taksonomią

text: Używam formularzy Gravity, aby umożliwić moim użytkownikom tworzenie postów z interfejsu użytkownika, ale mam problem z wykonaniem określonej funkcji formularza, którą chciałbym, aby działała i była ładnie wyświetlana. Zasadniczo chcę, aby moi użytkownicy mogli wybierać wiele terminów z określonej taksonomii... Jednak ta taksonomia jest OGROMNA - ma około 150 wpisów... ORAZ jest hierarchiczna. Kiedy ustawię to jako pole typu "Pole wyboru" i wypełnię je z taksonomii, wypluwa gigantyczną pojedynczą listę wszystkich terminów. Mogę oczywiście wyczyścić niektóre problemy z układem, ale chciałbym znaleźć lepsze rozwiązanie niż to ogólnie. Po pierwsze, chcę całkowicie ukryć terminy nadrzędne, ważna jest tylko druga warstwa terminów. Po drugie, chociaż mógłbym trochę wyczyścić formatowanie gigantycznej listy pól wyboru, wolałbym mieć coś, w którym moi użytkownicy mogliby wybrać jeden termin, a następnie mieć mały przycisk +, który po naciśnięciu doda kolejne pole tego samego typu, który umożliwiłby im wprowadzenie drugiego, trzeciego, czwartego, piątego itd. terminu z tej taksonomii. Nie jestem do końca pewien, jak najlepiej to zrobić, ale wszelkie rady lub sugestie byłyby bardzo mile widziane!


title: Interfejs JQuery nie działa

text: Próbuję zintegrować menu wyboru Jquery UI (styl „rozwijane”) w mojej witrynie Wordpress. Ale nie jestem w stanie tego zrobić, w obszarze widżetów utworzyłem pole wyboru i nadałem mu odpowiedni identyfikator tego css i jquery, ale nie ładuje się za pomocą jquery. Oto mój kod, którego używam do osiągnięcia:- Część nagłówkowa:- <link rel="Arkusz stylów" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes /ui-darkness/jquery-ui.css" type="text/css" /> <link rel="Arkusz stylów" href="<?php echo get_template_directory_uri(); ?>/ui.selectmenu.css" type=" text/css" /> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> < script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/jquery-ui.min.js"></script> <script type="text /javascript" src="<?php echo get_template_directory_uri(); ?>/js/ui.selectmenu.js"></script> <style type="text/css"> /*style demo*/ select,.ui -select-menu { float: lewo; margines prawy: 10px; rozmiar czcionki: 62,5%;} select, .ui-selectmenu { szerokość: 200px; rozmiar czcionki: 62,5%; margin:10px;} #cat{font-size: 62,5%;} </style> <script type="text/javascript"> JQuery(function(){ JQuery('select#cat').selectmenu({style: 'upuścić'});              }); </script> <script type="text/javascript" src="http://ui.jquery.com/applications/themeroller/themeswitchertool/"></script> Menu wyboru pojawia się z normalnym css, ale jquery jest nie działa, jestem zły w Jquery, więc każdy może pomóc, używam motywu 2011 i możesz sprawdzić menu selet na mojej stronie http://webstutorial.com/ Edited: `<script type="text/javascript "> jQuery.noConflict(); jQuery(funkcja(){ jQuery('select#cat').selectmenu({style:'dropdown'}); }); </script>`


title: Tag warunkowy, aby sprawdzić, czy używany jest 'page.php'?

text: Próbuję sprawdzić, czy szablon page.php jest używany, czy nie. Próbowałem `is_page_template( 'page.php' )`, ale to nie działa. Nie mogę również użyć `is_page()`, ponieważ chcę coś zrobić tylko wtedy, gdy używany jest `page.php`, a nie wtedy, gdy używany jest inny niestandardowy szablon strony. Daj mi znać i dziękuję! **Edytuj:** Powinienem był wcześniej wspomnieć, że mam plik o nazwie `common- options.php`, który jest dołączany do prawie wszystkich szablonów (takich jak `index.php`, `page.php`, `single.php ` i `page_blog.php`), w tym pliku próbuję wykonać sprawdzenie następującym kodem: if ( is_page_template( 'page.php' ) ) { echo "sukces!"; } Ale to nie działa, gdy otwieram stronę używającą "Szablon domyślny".


title: Skopiuj termin taksonomii do tytułu posta dla określonego niestandardowego typu postu

text: Używam Gravity Forms, aby umożliwić użytkownikom tworzenie postów z poziomu frontendu. Jednak sposób, w jaki ta witryna, którą tworzę, będzie działać, jeden konkretny Post_Type jest zasadniczo po prostu postem „Dane”. Istnieje określona taksonomia, której warunki są w rzeczywistości „tytułem” zbioru danych. Wymyśliłem już sposób na ukrycie pola „Tytuł” w formularzach Gravity, ale nadal mam je obecne w formularzu (z jakiegoś powodu blokują „Post_Type” i „Post Status” w polu „Title” w GUI, więc przeciążyłem logikę warunkową, aby zmusić ją do ukrycia). Chcę utworzyć filtr, który zawsze będzie kopiował wartość [Term] dla określonej [Taksonomii] do pola [Title] określonego [Typ_postu]. Każda rada, jaką mogłabym uzyskać, jak to osiągnąć, byłaby świetna! Z góry dziękuję! =========================================================== ============ OK, używając kodu od @Manny Fleurmond poniżej i z tego postu: Title_save_pre - Prosty problem, o którym wiesz na pewno, że wymyśliłem funkcję taxonomy_title_rename($title) { global $post ; $type = get_post_type($post->ID); if ($type== 'CUSTOM_POST_TYPE') { if($post->post_type === 'CUSTOM_POST_TYPE') { $terms = wp_get_object_terms($post->ID, 'MY_TAXONOMY'); if(!is_wp_error($terms) && !empty($terms)) { $title = $terms[0]->nazwa; } } return $tytuł; } else if ($typ != 'CUSTOM_POST_TYPE') { return $title; } } add_filter ('title_save_pre','taxonomy_title_rename'); W rzeczywistości jest to zapisanie tytułu posta w poście z taksonomii. Jednak nie wciąga go również do permalinka, mój permalink to tylko numer identyfikacyjny posta. Zobaczę, czy uda mi się rozwiązać ten problem samodzielnie, ale każda pomoc byłaby mile widziana!


title: Uprawnienia do folderów + obawy dotyczące bezpieczeństwa

text: Zepsułem złych facetów. Pracując nad inną częścią mojej witryny, przypadkowo wyrzuciłem uprawnienia do folderu WordPress. Udało mi się znaleźć/naprawić niektóre problemy i uruchomiłem witrynę, ale niektóre funkcje, takie jak publikowanie z aplikacji lub praca z motywami, nadal są zepsute. Czy istnieje sposób na zresetowanie wszystkich uprawnień do folderu do wartości domyślnych. Naprawdę martwię się, że moja witryna jest teraz zagrożona z powodu zepsutych uprawnień do folderów. Jakie są rzeczy do sprawdzenia w zakresie bezpieczeństwa, aby upewnić się, że nie zostałem naruszony.