title: Grafika podglądu witryny dla witryny Wordpress

text: Nie mam pojęcia, jak o to zapytać... więc dam z siebie wszystko. Mam witrynę Wordpress, hostowaną na własny rachunek. Kiedy publikuję link do posta na Facebooku, Facebook próbuje wykryć podgląd grafiki, która będzie wyświetlana wraz z postem (patrz zrzut ekranu) ![Przykład](http://i.stack.imgur.com/ez1ZX.png) z jakiegokolwiek powodu Facebook zawsze wybiera przycisk udostępniania Stumbleupon dla grafiki. Nie jest to pierwsza grafika na stronie i nie ostatnia, więc nie wiem dlaczego. Ale co ważniejsze, moje pytanie brzmi... kiedy nie używam wyróżnionego obrazu w poście (czasami to robię, czasami nie), jak mogę się upewnić, że podglądy, takie jak ten, wybierają inny obraz? Witryna korzysta z favicon, ale w tym przypadku wydaje się, że nie działa. Czy istnieje obraz lub coś, co mogę ustawić w kodzie, co pozwoliłoby mi określić, jaki obraz zostanie pobrany, gdy witryna spróbuje utworzyć taki podgląd?


title: Wyświetlanie strony jako strony docelowej typu post niestandardowy

text: Niestandardowe typy postów są jednocześnie niesamowite i BÓLNE. Zasadniczo muszę mieć stronę docelową, z listą bezpośrednich elementów potomnych typu post (pomyśl o kategoriach produktów), ale także kopię informacji na górze. Początkowo utworzyłem post na najwyższym poziomie o nazwie „Produkty” i miałem pod nim drzewo hierarchii, ale w ten sposób powstał link http://example.com/products/products, co oczywiście nie jest tym, czego chcę. Wiem, że mogę utworzyć stronę archiwum i niestandardowy szablon, aby wyświetlić TYLKO elementy podrzędne, ale nie jestem pewien, jak dodać dodatkową zawartość (tj. zawartość informacyjną) u góry strony bez zakodowania jej na stałe w szablonie . Jakiś sposób, żeby to zrobić?


title: Dodanie listy linków do mediów społecznościowych

text: Chcę dodać listę moich stron w mediach społecznościowych. Jakie są na to sposoby? Czy są do tego przeznaczone widżety?


title: Jak dodać nowe formaty postów do motywu dwudziestu czternastu?

text:
Nie używałem WP od 3.5, więc wybacz mi zardzewiałość. Próbuję dostosować motyw potomny dwudziestu czternastu lat dla WP 3.9.1, aby bardziej przypominał witrynę firmową niż witrynę czasopisma. **Mój cel:** Aby dział marketingu mógł się po prostu zalogować, dodać produkt (post) i wybrać odpowiedni format posta. W SLT3 wykonałem `Znajdź zaawansowane > W folderze nadrzędnym` i zduplikowałem kod niestandardowego formatu posta obrazu w `taxonomy-post_format.php`, `languages/twentyfourteen.pot`, `inc/widgets.php` i dodałem ` content- product.php` bez powodzenia. _Jak dodać więcej niestandardowych formatów postów, np. products?_ **Od content-product.php:** <?php /** * Szablon do wyświetlania postów w formacie postu produktowego * * @package WordPress * @subpackage Twenty_Fourteen * @since Twenty Fourteen 1.0 */ ?> ...
  <a class="entry-format" href="<?php echo esc_url( get_post_format_link( 'produkt' ) ); ? >"><?php echo get_post_format_string( 'produkt' ); ?> **Z widgets.php:** widżet funkcji publicznej ( $args, $instance ) { $format = $instance['format']; switch ( $format ) { case 'image': $format_string = __( 'Obrazy', 'dwadzieścia czternaście' ); $format_string_more = __( 'Więcej obrazków', 'dwadzieścia czternaście' ); przerwanie; ... case 'na bok': default: $format_string = __( 'Na boku', 'dwadzieścia czternaście' ); $format_string_more = __( 'Więcej na bok', 'dwadzieścia czternaście' ); przerwanie; case 'produkt': domyślnie: $format_string = __( 'Produkty', 'dwadzieścia czternaście' ); $format_string_more = __( 'Więcej produktów', 'dwadzieścia czternaście' ); przerwanie; } **Od dwudziestu czternastu.pot:** #: inc/widgets.php:84 taxonomy-post_format.php:45 msgid "Produkty" msgstr "" #: inc/widgets.php:85 msgid "Więcej produktów" msgstr " " **Z taksonomii-post_format.php:**
 <?php if ( is_tax( 'post_format', 'post-format-aside' ) ) : _e( 'Poza', 'dwadzieścia czternaście' ); elseif ( is_tax( 'post_format', 'post-format-image' ) ): _e( 'Obrazy', 'dwadzieścia czternaście' ); ... elseif ( is_tax( 'post_format', 'post-format-product' ) ): _e( 'Produkty', 'dwadzieścia czternaście' ); else : _e( 'Archiwa', 'dwadzieścia czternaście' ); endif; ?>
  Najbardziej powiązane pytanie dotyczące WPSE tutaj! [Domyślne formaty postów to Standard, Aside, Image, Video, Audio, Quote, Link i Gallery] (http://i.stack.imgur.com/XlY4X.png)


title: Chcę edytować dokumenty na moim blogu bez konieczności ponownego pobierania i przesyłania plików

text: Czy będzie to możliwe? Zasadniczo potrzebuję czegoś, co umożliwi mi edycję plików bezpośrednio na serwerze... każda pomoc byłaby bardzo mile widziana....


title: Dostosowanie adresu URL/linku bezpośredniego dla taksonomii/archiwum terminów i postu

text: Mam CPT o nazwie „Dostawca”, taksonomię o nazwie „Państwo” i termin o nazwie „Alabama”. Czy można zmienić następującą strukturę adresów URL z: 1. http://localhost/state/alabama (aby wyświetlić wszystkich dostawców z Alabamy) 2. http://localhost/providers/some-provider-in-alabama (dodano post w ramach dostawcy CPT i wybierz AL ze stanu) na 1. http://localhost/alabama 2. http://localhost/alabama/some-provider-in-alabama Używam: - WP 3.9.2 - Szablon taksonomii "taxonomy-state.php" - WCK - Kreator pól niestandardowych i niestandardowych typów postów (do tworzenia CPT i taksonomii)


title: Zmiana motywu tylko w CSS i kilku obrazkach

text: Stworzyliśmy motyw, który zawiera wiele zmian. Teraz chcemy włączyć ten motyw w naszej witrynie w różnych kolorach i kilku różnych obrazach: ![tutaj podaj opis obrazka](http://i.stack.imgur.com/N77sV.png) To, co robimy, to zduplikowanie motywu, a następnie wprowadzenie kilku zmian w CSS i zmianę kilku obrazów. Ale wydaje się to przesadą - skopiować wszystkie pliki motywów tylko po to, aby wprowadzić tak niewiele zmian. Co więcej, jeśli kiedykolwiek będziemy musieli zmienić coś funkcjonalnego w motywie, będziemy musieli przejść przez wszystkie duplikaty i zastosować to. Czy istnieje sposób na umożliwienie użytkownikom zmiany kolorów i obrazów bez powielania motywu?


Czy można zmienić obraz w domyślnym motywie „Twenty Eleven”? Jeśli tak, jak to się robi?


title: Pobierz szczegóły tekstu

text: Mam kilka pytań typu `gettext()`, których nie ma nigdzie w WordPress Codex, ale myślę, że są one ważne. 1. `__('string')` w THEME powinien być użyty dla ciągów, które mogą występować również w głównym pliku tłumaczeń WordPressa. Nie jest wymagana domena tekstowa. Przykłady: jeden, dwa, prześlij, anuluj, usuń i inne popularne słowa. Prawidłowy? 2. `__('string', 'textdomain')` w THEME powinno być używane dla łańcuchów, które są specyficzne dla tematu. Przykłady: 'ta opcja włącza funkcję X'. Prawidłowy? 3. Myślę, że lepiej zrobić jedną domenę tekstową dla front-endu motywu, a drugą dla back-endu. Podobnie jak `__('string', 'textdomain')` i `__('string', 'textdomain-admin')`. Nie każdy chce spędzać godziny na przetłumaczeniu 100 dodatkowych ciągów panelu administracyjnego. Prawidłowo czy to zła praktyka? 4. Każda WTYCZKA powinna mieć swoją własną domenę tekstową: `__('ciąg', 'nazwa-wtyczki')`. Prawidłowy? 5. Myślę, że ustawienie KONTEKST dla ciągu THEME jest bardzo, bardzo przydatne, ale nikt tego nie robi. Czemu? Na przykład: `_x('dodaj element', 'dodaj tekst slajdu', 'textdomain')` i `_x('dodaj element', 'koszyk', 'textdomain')`. 6. Jak tłumaczyć komentarze, daty, waluty, godziny, liczby? 1. Przykład: jeden komentarz, dwa komentarze, ale w niektórych językach może to być: jeden komentarz, dwa komentarze, trzy komentarzeX, cztery komentarzeXY, pięć komentarzyXYZ, sześć komentarzyABXY (o wiele więcej różnych form liczby mnogiej ze złożonymi wzorcami). 2. Przykład: prawie wszystkie motywy używają `the_time(get_option('date_format'));` - czy nie powinno to być `echo date_i18n(get_option('date_format'), strtotime($post->post_date));` lub ` echo date_i18n('F jS, Y'), strtotime($post->post_date));`? 3. Przykład: angielski używa 12 345,12, ale niektóre języki mogą używać 12.345,12.


title: Kanał RSS zawierający posty tylko z 1 kategorii

text: Używam motywu z wieloma niestandardowymi typami postów, ale chciałbym, aby mój główny kanał RSS `www.domain.com/feed` wyświetlał posty i niestandardowe typy postów tylko z jednej kategorii. Kategoria jest zdefiniowana w „postach/kategoriach”. 1. Jak mogę to zrobić? 2. Czy to jest złe dla SEO? W każdym razie zauważyłem, że moje posty są indeksowane przez Google po kilku dniach, nawet jeśli są zawarte w kanale RSS.


title: Warunkowe ładowanie CSS dla mojej wtyczki

text: Chciałbym ciągle ładować arkusz stylów potrzebny mojej wtyczce w zależności od tego, czy dany krótki kod jest obecny w poście lub na stronie. Obecność krótkiego kodu wskazywałaby, że użytkownik korzysta z wtyczki w tym poście lub na stronie i dlatego musimy załadować JS i CSS. czy to możliwe?


title: Pytanie do katalogu przesyłania

text: Szczęśliwego Nowego Roku! Mam więc duży problem, obecnie jeden z naszych plików php, które kupiliśmy, wskazuje na domyślny katalog przesyłania dla wordpress i chcielibyśmy to zmienić na nasz własny katalog przesyłania. Nadal używamy domyślnego katalogu przesyłania dla wordpress, ale chcemy zmienić katalog, do którego przesyłany jest ten niestandardowy plik php. Obecnie kod wygląda tak: $upload_dir = wp_upload_dir(); $upload_dir['basedir'].'/downloads/encrypted/'.$item.'/*')); Obecnie wygląda to tak: „www.example.com/wp-content/uploads/downloads/encrypted/” Chcemy, aby wskazywał na „www.example.com/downloads/encrypted/” Zajrzeliśmy do tablic dla `wp_upload_dir( );` ale wydaje się, że nie można wrócić do folderu. Jakieś wskazówki lub pomoc? Dziękuję


title: Dynamiczne dodawanie podkatalogu strony, tak jak robi to buddypress

text: Mam stronę z slug/name **charts**. Tak więc adres URL wygląda tak: „http://domain.tld/charts/” dla strony Wykresy. Kiedy wpisuję adres URL do `http://domain.tld/charts/(coś)` lub `http://domain.tld/charts/(coś)/(coś)`, nie znaleziono błędu, logicznie to powinno, ponieważ nie ma podstrony z podanymi imionami. Teraz chodzi o to, że kiedy jest wizyta na `http://domain.tld/charts/(coś)` lub `http://domain.tld/charts/(coś)/(coś)`, nadal powinno się zapytanie na stronie Wykresy, a także dodaj pojedyncze lub wielokrotne wystąpienie `(coś)` do wp query var, abym mógł uzyskać do niego dostęp za pomocą funkcji get_query_var. (coś) zwróci oczywiście jako tablica. „(coś)” może być dowolnymi znakami alfanumerycznymi i nie musi być poprawnym. Potrzebujesz go tylko, aby WordPress nadal tworzył zapytania dla strony wykresu, a wszystkie dodatkowe ścieżki URL są dodawane do obiektu wp_query. Twoja pomoc jest bardzo potrzebna.


title: Ustawić zakodowany szablon strony (archiwum typu post) jako stronę główną/pierwszą mojego bloga Wordpress?

text: w sekcji Ustawienia->Czytanie mogę ustawić, która strona powinna pojawić się od razu podczas odwiedzania mojej witryny jako "strona główna". W moim przypadku chcę, aby archiwum mojego niestandardowego typu posta o nazwie „wydarzenia” było główną/pierwszą stroną mojej witryny. Tak więc mam zakodowany element w mojej nawigacji, który mówi "Zdarzenia", który łączy się z /events i używa mojego niestandardowego szablonu posta do zapętlenia mojego niestandardowego typu posta. Jak mogę (i jaki jest najlepszy sposób) ustawić to archiwum jako automatyczną stronę główną/stronę główną mojej witryny? Chcę uniknąć niepotrzebnego routingu na mojej stronie. Więc dzwoniąc „www.mypage.com”, chcę, aby archiwum pojawiło się natychmiast. Jakieś pomysły na ten temat? Najlepiej nawet jako ustawienie w sekcji „Ustawienia->Czytanie” w backendzie. Z góry dziękuję. Matt


title: Używanie wp_handle_upload i media_handle_sideload z ajax

text: Walczę, aby dowiedzieć się, jak używać wp_handle_upload() z ajax podczas przetwarzania formularza. To, co tutaj robię, to użycie formularza, aby umożliwić użytkownikom edycję postów z interfejsu użytkownika, aby mogli zrobić kilka rzeczy, takich jak zmiana obrazu postu, więc od tego zaczniemy. Pominę fragmenty tej funkcji, aby była prosta, w tym sprawdzanie błędów. // Przetwórz formularz edycji add_action('wp_ajax_process_edit_form', 'process_edit_form'); function process_edit_form() { require_once(ABSPATH . "wp-admin" . '/includes/image.php'); require_once(ABSPATH . "wp-admin" . '/includes/file.php'); require_once(ABSPATH . "wp-admin" . '/includes/media.php'); $plik_obrazu = $_POST['plik_obrazu']; $nazwa_pliku_obrazu = $_POST['nazwa_pliku_obrazu']; $post_to_edit = get_post($_POST['postId']); // Ustaw plik obrazu if ($image_file["rozmiar"] > 0) { $cover_art_id = media_handle_sideload( $album_cover, $pid ); wp_set_object_terms ($cover_art_id, 'cover_art', 'category'); update_post_meta($pid,'music_art',$cover_art_id); } } I podstawowy formularz html <form enctype="multipart/form-data"> <input type="file" name="image_file" id="image_file" /> <input type="submit" value="Zapisz zmiany " tabindex="6" id="wyślij" nazwa="prześlij" data-id="<?php echo $post->ID; ?>" /> </form> A teraz trochę jquery. Zauważ, że skrypt tego jquery został zlokalizowany i wszystko inne w formularzu działa poprawnie przy użyciu moich metod. Jedyną rzeczą, która nie działa, jest przesyłanie pliku podczas przesyłania. $(document).on("click","#submit", function(e) { e.preventDefault(); $this = $(this); postId = $this.data("id"); imageFile = $ this.closest("form").find("#plik_obrazu").val(); if (plik_obrazu != "") { nazwaPlikuobrazu = $this.closest("form").find("#plik_obrazu"). val().split('\\').pop(); } else { imageFileName = "brak"; }; data = { action: 'process_edit_form', postId : postId, imageFile : imageFile, imageFileName : imageFileName }; $ .post(ajaxurl, dane, funkcja (odpowiedź) { }); }); Mogłem popełnić kilka błędów przy przenoszeniu tego, ale w zasadzie to właśnie robię. Dlaczego to nie działa? Widziałem odpowiedź, która mówi, że muszę użyć jakiegoś typu wtyczki przesyłania ajax, ale chciałbym to zrobić bez, a jeśli nie rozumiem, jak ich używam, aby zapisać przesyłanie jako załącznik. Wyprostuj mnie!


title: Niestandardowy biały ekran Meta Box

text:
Próbuję stworzyć prosty Custom Meta Box na post filmowy. Potrzebuję pola tekstowego dla tytułu i reżysera oraz obszaru tekstowego dla opisu. Wydawało się, że wszystko działa, dopóki nie dodałem obszaru tekstowego, nie byłem pewien, jak stworzyć html.
 Opis <textarea name="meta_box_desc" id="meta_box_desc" col="100" row="5"><?php echo $desc; ?></textarea>
 Pola tekstowe i obszar tekstowy są wyświetlane w WP, ale kiedy klikam Aktualizuj, pojawia się biały ekran Czy ktoś może zobaczyć, co robię źle. <?php add_action( 'add_meta_boxes', 'cd_meta_box_add' ); function cd_meta_box_add() { add_meta_box( 'my-meta-box-id', 'Kredyty filmowe', 'cd_meta_box_cb', 'post', 'normal', 'high' ); } function cd_meta_box_cb( $post ) { $values = get_post_custom( $post->ID ); $title = isset( $values['meta_box_title'] ) ? esc_attr( $values['meta_box_title'][0] ): ''; $director = isset( $values['meta_box_director'] ) ? esc_attr( $wartości['meta_box_director'][0] ): ''; $desc = isset( $values['meta_box_desc']) ? esc_attr( $wartości['meta_box_desc'][0] ): ''; wp_nonce_field( 'my_meta_box_nonce', 'meta_box_nonce' ); ?>
 Tytuł filmu <input type="text" name="meta_box_title" id="meta_box_title" value="<?php echo $title; ?>" / >

 Dyrektor <input type="text" name="meta_box_director" id="meta_box_title" value="<?php echo $director; ?> " />

 Opis <textarea name="meta_box_desc" id="meta_box_desc" col="100" row="5"><?php echo $desc; ?></textarea>
 <?php } add_action( 'save_post', 'cd_meta_box_save' ); function cd_meta_box_save( $post_id ) { // Zwolnij kaucję jeśli robimy autozapis if( define( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return; // jeśli nie ma naszej jednorazówki lub nie możemy jej zweryfikować, wpłać kaucję if( !isset( $_POST['meta_box_nonce'] ) || !wp_verify_nonce( $_POST['meta_box_nonce'], 'my_meta_box_nonce' )) zwrócić; // jeśli nasz obecny użytkownik nie może edytować tego posta, zwolnij kaucję if( !current_user_can( 'edit_post' ) ) return; // teraz możemy faktycznie zapisać dane $allowed = array( 'a' => array( // zezwól na tagi 'href' => array() // a te zakotwiczone mogą mieć tylko atrybut href ) ); // Prawdopodobnie dobrym pomysłem jest upewnienie się, że dane są ustawione if( isset( $_POST['meta_box_title'] ) ) update_post_meta( $post_id, 'meta_box_title', wp_kses( $_POST['meta_box_title'], $allowed ) ); if( isset( $_POST['meta_box_director'] ) ) update_post_meta( $post_id, 'meta_box_director', wp_kses( $_POST['meta_box_director'], $allowed ) ); if( isset( $_POST['meta_box_desc'] ) ) update_post_meta( $post_id, 'meta_box_desc', wp_kses( $_POST['meta_box_desc'], $allowed ) ); } ?>


title: linki javascript i css nie działają na serwerze

text: Mam kilka linków Jquery w moim nagłówku. Po pierwsze, prawdopodobnie nie używam do tego odpowiedniej funkcji wordpress. W tej chwili na mojej stronie poniższy kod nie działa. Tych linków nie ma, ale w moim katalogu ftp istnieją. Nie jestem pewien, co robię źle? W razie potrzeby mogę połączyć się z witryną na żywo. <link type="text/css" href="http://fiftyfity.com/wp-content/themes/fiftyfityNew/jQuery-ui-1/css/pepper-grinder/jquery-ui-1.8.17.custom. css" rel=stylesheet /> <script src="http://fiftyfity.com/wp-content/themes/fiftyfityNew/jQuery-ui-1/js/jquery-1.7.1.min.js"></script > <script src="http://fiftyfity.com/wp-content/themes/fiftyfityNew/jQuery-ui-1/js/jquery-ui-1.8.17.custom.min.js"></script> oraz oto kod przed wyjściem <?php $url = content_url();?> <link type="text/css" href="<?php echo $url; ?>/themes/fiftyfityNew/jQuery-ui-1/ css/pepper-grinder/jquery-ui-1.8.17.custom.css" rel="stylesheet" /> <script src="<?php echo $url; ?>/themes/fiftyfityNew/jQuery-ui-1/ js/jquery-1.7.1.min.js"></script> <script src="<?php echo $url; ?>/themes/fiftyfityNew/jQuery-ui-1/js/jquery-ui-1.8. 17.custom.min.js"></script>


title: Jak / Czy można uruchomić zewnętrzny plik / funkcję PHP w Wordpressie?

text: W mojej konfiguracji jest zwykła strona internetowa, która składa się z nagłówka i treści (obie wydrukowane z oddzielnych plików PHP znajdujących się w `domain.com/includes/`) oraz bloga Wordpress opartego na podkatalogu (`domain.com/ blog/`). Chcę dołączyć domain.com/includes/header.php do głównej skórki Wordpress. Próbowałem `require_once`, `include`, określając `ABSPATH` w `wp-config` i różnych innych technik, ale żadna z nich nie zadziałała dla mnie. Drukowanie zawartości header.php do skórki Wordpress jest niezbędne i nie ma dla mnie kompromisu w moim przepływie pracy. Byłbym bardzo wdzięczny za każdą radę, jak mogę uruchomić ten skrypt, czy to za pomocą wtyczki, czy poprzez edycję podstawowych plików, bez konieczności zmiany lokalizacji `domain.com/includes/header.php`. Z góry dziękuję.


title: Motyw Wordpress ajax have_posts()

text: Moim celem jest załadowanie blogrolla do mojego motywu przez ajax. Ale wszystko, co mogę uzyskać jako odpowiedź, to 0 (jeśli pominę wiersz die(), w przeciwnym razie otrzymam pustą odpowiedź). Oto mój kod: js ajax: $.ajax({ url:"http://domain.com/wp-admin/admin-ajax.php", type:'POST', data:'action=load_men_blog', / /dataType:'html', //cache: false, success: function(html){ $("#b_contentwrapper").empty(); $("#b_contentwrapper").append(html); } }); PHP (functions.php) : function implement_ajax() { while (have_posts()): echo "azerty"; koniec; umierać(); } add_action('wp_ajax_load_men_blog', 'implement_ajax'); add_action ('wp_ajax_nopriv_load_men_blog', 'implement_ajax'); Ponieważ mam posty w swojej bazie, oczekuję zwrotu azerty. Ale mimo to otrzymuję pustą odpowiedź lub 0, jeśli skomentuję wiersz die(). Jeśli umieszczę jakiekolwiek echo poza pętlą while, otrzymam echo w oczekiwanym div, co oznacza, że javascript działa. Czy ktoś może wskazać mi właściwy kierunek?


title: Adres URL odzyskiwania hasła zawiera błąd — ale nie znaleziono go w kodzie ani w bazie danych

text: Podczas instalacji wielostanowiskowej/sieciowej nagle pojawia się problem z adresem URL odzyskiwania hasła: http//my.domain.com/wp-login.php?action=lostpassword Zwróć uwagę na brak dwukropka po „http”. Grep bazy danych i bazy kodu nie ujawnia żadnych winowajców (chociaż musi gdzieś tam być). Masz pomysł, co może powodować problem? Wszystkie ustawienia domeny witryny wydają się poprawne. Oto konfiguracja wielostanowiskowa: /* Wielostanowiskowa */ define('WP_ALLOW_MULTISITE', true); define('MULTISITE', prawda); define('SUBDOMAIN_INSTALL', prawda); define('DOMAIN_CURRENT_SITE', 'http://my.networkdomain.com'); define('PATH_CURRENT_SITE', '/'); define('SITE_ID_CURRENT_SITE', 1); define('BLOG_ID_CURRENT_SITE', 1); define( 'WSCHÓD', 'wł.' );


title: Załaduj treść wordpress w innej domenie

text:
Zrobiłem kilka badań w Google, ale nie mogę uzyskać właściwej odpowiedzi. Muszę uzyskać pętle wordpress poza domeną za pomocą pliku php. Na przykład: Mam witrynę hostowaną pod adresem **www.mojawitryna.com** za pomocą wordpress. Drugi to **www.secondwebsite.com** używający tylko php. Chciałbym użyć czegoś takiego jak wp-load.php, aby użyć moich pętli w moich plikach php. Wielkie dzięki, jhon * * * Nie mogę poprawnie określić ścieżki serwera... Jakieś pomysły? Oto moja inna ścieżka: PLIK PHP, KTÓRY TRZEBA ZAŁADOWAĆ wp-load.php: `/home/faver/domains/facebook.faver.be/www/lili` Folder, w którym znajduje się wp-load.php: `/home/ lbpl/www/` Próbowałem tego: <?php //Dołącz WordPress define('WP_USE_THEMES', false); wymagaj('../../../../../lbpl/www/wp-load.php'); query_posts('showposts=1'); ?> <?php while (have_posts()): the_post(); ?>
<?php the_title(); ?>
 <?php the_fragment(); ?>
<a href="<?php the_permalink(); ?>">Czytaj więcej...
 <?php endwhile; ?> Ale nie działa. Myślę, że nie mogę przejść do katalogu `/home` ze względu na prawa FTP. Dzięki za pomoc Jhon


title: jak mogę zintegrować nexmo z moją witryną Wordpress?

text: Szukałem czegoś, co umożliwi mi wysyłanie wiadomości sms z mojej strony wordpress do subskrybentów mojego bloga (nie ma go na wordpress.com. Pobrałem pliki z wordpress.org i wrzuciłem na własny serwer). W końcu trafiłem na Nexmo.com. Zapisałem się, ale teraz nie wiem od czego zacząć. Zajrzałem do dokumentacji, którą dostarczyli na nexmo, ale tak naprawdę nie rozumiem, co z nią zrobić. Czy ktoś mógłby mi pomóc w tym, jak skutecznie zintegrować nexmo z moją witryną wordpress? Jeśli to pomaga, używam motywu grafenu na mojej stronie.


title: Pomoc! Zamień dane linków php na adres URL LUB ukryj link edycji w admin postu LUB ukryj wersje robocze dla wszystkich użytkowników oprócz administratora?

text: Moja witryna internetowa umożliwia użytkownikom przesyłanie zdarzeń za pośrednictwem procesu przesyłania wbudowanego w dostosowaną stronę frontendową. Jako osoba przesyłająca wydarzenia chcę również, aby użytkownicy mieli dostęp do pulpitu nawigacyjnego, w którym mogą przeglądać opublikowane przez siebie wydarzenia. > Idealnie chcę usunąć dostęp do edit.php - nie chcę, aby użytkownicy mogli > edytować / lub docierać do post.php, w ogóle przez swój pulpit nawigacyjny. Chcę > tylko, aby przesyłali zdarzenia za pomocą niestandardowego przesyłania frontonu. ### MOŻLIWOŚĆ ROZWIĄZANIA 1 Mógłbym całkowicie wyłączyć edycję dla roli współtwórcy i nadal mieć sposób na pokazywanie postów dla listy zdarzeń z ich pulpitu nawigacyjnego, gdybym tylko mógł dowiedzieć się, jak dodać te informacje do menu na pasku bocznym administratora w forma przycisku w desce rozdzielczej (dla wszystkich użytkowników). Ten kod pochodzi z linku, który znalazłem w widżecie: <a href="<?php echo get_author_link( $echo = false, $current_user->data->ID; ?>LINKTUTAJ TEKST Próbowałem dodać przy użyciu funkcji AG Custom admin dodaj przycisk menu, ale to nie działało.Powyższe byłoby dla mnie idealnym rozwiązaniem, ponieważ nie byłoby dostępu do edit.php za pośrednictwem linku url dla tej roli.Jednym z przeciwwskazań jest to, że pokazuje posty na froncie, pokazuje przycisk edycji, gdy post jest nadal wersją roboczą.Chciałbym usunąć przycisk EDYTUJ ze strony frontonu, którą przeglądają, myślę, że pojawia się tylko w stanie wersji roboczej, ponieważ ta rola nie może edytować opublikowane posty (muszę to dokładnie sprawdzić). Nawet jeśli jest to post użytkowników, nie chcę, aby mogli go edytować po przesłaniu, ponieważ chcę, aby opublikowano tylko to, co pierwotnie zatwierdziłem. Mógłbym to sam rozwiązać (prawdopodobnie w singlu?) Błąd, jeśli ktoś może pomóc, a ja o tym myślę, to byłoby świetnie! całkowicie uniemożliwić edycję, co uniemożliwia dostęp do pliku edit.php. co jest w porządku w powyższym przykładzie (jeśli mogę dodać ten link, aby wyświetlić wszystkie posty autorów na pasku bocznym administratora). Ale naprawdę chcę, aby osoby przesyłające wydarzenia miały możliwość przeglądania listy swoich wydarzeń i przeglądania każdego z nich. Edit.php wydaje się dobrym drugim najlepszym miejscem, aby to się stało, jeśli nie mogę połączyć się z listą w interfejsie, jak w powyższym exp, ponieważ zdarzenia są już wymienione w edit.php, podobnie jak funkcja widoku. Po prostu nie chcę zezwalać na edycję linku, a link jest w tytule posta, dopóki go nie zatwierdzę!! Pomyślałem, czy mógłbym wyłączyć link, aby edytować post. (do post.php), który jest włączony do tytułu każdego wiersza w tabeli postów (lub wydarzeń w moim przypadku), co uniemożliwiłoby ludziom dostęp do tego ekranu. ALE musiałbym wtedy rozwiązać problem, że ekran będzie nadal dostępny, jeśli wklei się '/edit.php' do adresu URL. Usunąłem quickedit i edit oraz edit z filtra zbiorczego na górze edit.php. ### MOŻLIWOŚĆ ROZWIĄZANIA 3 Kolejna możliwa poprawka wykorzystuje fakt, że gdy post zostanie opublikowany (zatwierdzony przeze mnie) przez współtwórcę, ten link w tytule posta na ekranie edit.php faktycznie znika! Więc alternatywnie, gdyby ktoś znał kod, który mógłbym wkleić do funkcji w motywie lub nawet do podstawowych plików (nie mam nic przeciwko, tak czy inaczej, jestem zdesperowany!), aby umożliwić tylko administratorom posty o statusie wersji roboczej na swojej liście postów w edit.php, więc gdy współtwórca opublikuje wydarzenie w interfejsie użytkownika, nie pojawi się ono na jego własnym ekranie postów, dopóki nie zostanie opublikowane (po zatwierdzeniu), to również rozwiąże mój problem ! Dziękuje bardzo za Twój czas! Całkowicie utknąłem, nie mogę znaleźć rozwiązania dla żadnej z tych opcji, o ile mogę to osiągnąć z każdą! Byłbym bardzo wdzięczny, gdyby był ktoś, kto mógłby mi pomóc w tym wyzwaniu, jestem naprawdę zakłopotany. Nie jestem ekspertem od php, ale jestem poręczny i mam rozsądne pojęcie, i jestem dobry w znajdowaniu rozwiązań i poprawianiu tych od innych, aby pasowały do moich nietypowych potrzeb itp. Spędziłem wieki nad tym i po prostu musiałem machać biała flaga! Chętnie wypatruję wszelkich wskazówek od nas w wielkim, szerokim świecie! Jeszcze raz dziękuję Kaye ................................................ ....................................... Inne uwagi: * Używam wordpress v3 .1.1 * Używam zarządzania własnymi postami czytelników * Ukryłem bibliotekę multimediów, aby współtwórcy widzieli tylko własne zdjęcia. * Używam menedżera ról do radzenia sobie z limitami ról * Używam również rolescoper do radzenia sobie z limitami kategorii * Używam opcji administrowania i globalnych ekranów, aby dostosować ekran * Używam niestandardowego administratora AG, aby pomóc w dostosowaniu ekranu administratora * Wraz ze stertą innych funkcji i wtyczki. Bardzo chciałbym zezwolić przesyłającym zdarzenia na dostęp do pulpitu nawigacyjnego, więc nie chcę ukrywać całego pulpitu jako rozwiązanie problemu ukrywania dostępu do edycji (lub POST.php) w zapleczu.


title: Niestandardowy typ posta z wymuszonym przycięciem obrazu o stałych proporcjach

text: To, czego szukam, jest podobne do kilku innych pytań. Linki to: Tworzenie niestandardowego typu postu zorientowanego na obraz? Korzystanie z domyślnej funkcji przycinania niestandardowego nagłówka WordPress w typie posta / MetaBox. Szukam kombinacji tych dwóch. Wyjaśnię, żebyś nie musiał szukać tych innych pytań. Chciałbym, aby użytkownik mógł przesłać zdjęcie do niestandardowego typu postu i przed zapisaniem był poproszony o przycięcie obrazu z ustawionym współczynnikiem proporcji. Staram się, aby użytkownicy nie musieli przycinać obrazów poza WordPress tylko po to, aby pasowały do pokazu slajdów z ustawionym rozmiarem obrazu. Funkcja niestandardowego nagłówka jest prawie tym, czego chciałbym użyć, ale nie wiem, jak wciągnąć ją do wtyczki lub motywu i wykonać ją w niestandardowym typie postu. Fakt, że użytkownik jest **poproszony o przycięcie obrazu w określonych proporcjach** przed kontynuowaniem, **jest kluczowy**. Czuję się dość komfortowo z niestandardowymi typami postów, jeśli ktoś może po prostu dać mi wskazówkę, jak sprawić, by WordPress wymusił niestandardowe przycięcie obrazu przed zapisaniem niestandardowego postu. Z góry dziękuję każdemu z was, geniuszowi kodowania, który wie/domyśla się, jak to zrobić.


title: Dodaj niestandardowy CSS na stronie WordPress

text: Jestem nowy na wordpressie. Jestem administratorem w serwisie wordpress i nie mam dostępu do motywu. Chcę utworzyć nową stronę bloga, na której zamieszczam nowy kod CSS. Próbowałem dodać w edytorze tekstu: <style> mój kod css </style> <div> .....moja część html... </div> Ale to nie zadziałało. Widzę część html bez dodatkowego css. Czy jest na to sposób? **Edytuj:** Nie mogę używać stylu wbudowanego, ponieważ chcę dołączyć :hover do mojego CSS


title: dodaj metabox za pomocą function.php

text:
cześć, czy ktoś wie, jak mogę dodać inne pole meta i zapisać dane w różnych niestandardowych polach, korzystając z poniższego kodu. <?php function add_meta_boxes() { add_meta_box( 'powtarzalne-pola', 'Lista odtwarzania audio', 'repeatable_meta_box_display', 'post', 'normalny', 'wysoki'); } add_action('admin_menu', 'add_meta_boxes'); function repeatable_meta_box_display() { globalne $custom_meta_fields, $post; wp_nonce_field( 'repeatable_meta_box_nonce', 'repeatable_meta_box_nonce' ); //$repeatable_fields = get_post_meta($post->ID, $prefix, true); ?>  <?php $meta = get_post_meta($post->ID, 'custom_audio', true); ?>

 	 Nazwa	 URL

 <?php if ( $meta ) { foreach ( $meta as $field ) { ?>
 -	 <input type=" text" class="widefat" name="name[]" value="<?php if($field['name'] != '') echo esc_attr( $field['name'] ); ?>" / >	 <input type="text" class="widefat" name="url[]" value="<?php if ($field['url'] != '') echo esc_attr( $field['url'] ); else echo 'http://'; ?>" />	 |||
 <?php } } else { // pokaż puste ?>
 -	 <input type="text" class="widefat" name="name[]" />	 <input type="text" class="widefat" name="url[]" value="http://" />	 || |
 <?php } ?>
 -	 <input type="text" class="widefat" name="name[]" />	 <input type="text" class="widefat" name="url[]" value="http://" />	 | ||

Dodaj kolejny <input type="submit" class="metabox_submit" value="Save" />
 <?php } add_action('save_post', 'repeatable_meta_box_save'); function repeatable_meta_box_save($post_id) { globalne $custom_meta_fields; if (! isset( $_POST['repeatable_meta_box_nonce']) || ! wp_verify_nonce( $_POST['repeatable_meta_box_nonce'], 'repeatable_meta_box_nonce') ) return; if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return; if (!current_user_can('edit_post', $post_id)) return; // przejdź przez pola i zapisz dane $old = get_post_meta($post_id, 'custom_audio', true); $nowy = tablica(); $imiona = $_POST['imię']; $urls = $_POST['url']; $liczba = ilość( $nazwy ); for ( $i = 0; $i < $count; $i++ ) { if ( $names[$i] != '' ) : $new[$i]['name'] = stripslashes( strip_tags( $names[ $i]) ); if ( $urls[$i] == 'http://' ) $new[$i]['url'] = ''; else $new[$i]['url'] = stripslashes( $urls[$i] ); // i jakkolwiek chcesz oczyścić endif; } if ( !empty( $nowy ) && $nowy != $stary ) update_post_meta( $post_id, 'custom_audio', $new ); elseif ( empty($new) && $old ) delete_post_meta( $post_id, 'custom_audio', $old ); } ?>


title: Zapisuj posty autora jako oczekujące na sprawdzenie - blokuj użytkownikom aktualizującym swoje posty

text: Jak mogę pozwolić użytkownikom (autorowi, redaktorowi, współtwórcy itp.) na edytowanie własnych postów, ale nie na ich aktualizowanie, po prostu trzymaj je tak, jak w "oczekujących na sprawdzenie", abym mógł zdecydować, czy mogę je opublikować, czy nie. Domyślnie te posty przesłane przez użytkowników są „oczekujące na sprawdzenie”, ale gdy zdecyduję się opublikować post, autor może go ponownie edytować i opublikować bez konieczności moderacji. Czy istnieje sposób, aby ten sam post czekał na sprawdzenie za każdym razem, gdy autor go edytuje? Z góry dziękuję


title: Menu ze stronami rodziców, dzieci i rodzeństwa

text:
Tutaj widzisz menu nadrzędne wybrane na poziomym pasku nawigacyjnym. To już działa. Potrzebuję paska bocznego, jak mają z tym samym rodzicem wskazanym plus dzieci, gdy istnieją. W tej chwili mam świetny kod dzięki opinii Michaela na WordPress Stack Exchange na wcześniejsze pytanie tutaj. Ale ten kod nie pokazuje rodzica nad stronami dla dzieci ani stron dla dzieci nad rodzeństwem. Wszelkie pomysły, jak mogę dostosować ten kod autorstwa Michaela: <?php $children = wp_list_pages('title_li=&child_of='.$post->ID.'&echo=0&depth=2'); if ($dzieci) { ?>
 <?php echo $dzieci; ?>
 <?php } //ends (if($children)// elseif($post->post_parent) { //jeśli nie ma dzieci, spróbuj pobrać stronę nadrzędną i wyświetlić strony rodzeństwa, w tym samą stronę $ rodzeństwo = wp_list_pages('title_li=&child_of='.$post->post_parent.'&echo=0&depth=1'); if ($siblings) { ?>
 <?php echo $rodzeństwo ; ?>
 <?php } //koniec if($rodzeństwo)// ?> <?php } else { //opcjonalne: jeśli nie ma dzieci i jeśli nie ma rodzica, pokaż wszystkie strony najwyższego poziomu $pagelist = wp_list_pages('title_li=&echo=0&depth=1'); if ($pagelist) { ?>
 <?php echo $pagelist; ?>
 <?php } //ends if($pagelist)// ?> <?php } ?> Strona WordPress Codex http://codex.wordpress.org/Function_Reference/wp_list_pages#List_current_Page_with_its_ancestors_and_children wydaje mi się interesująca, ale nie wymyśliłem tego wszystko jeszcze.. **Aktualizacja:** Dodałem dzieci do głębokości dwójki za pomocą pierwszego wyrażenia `if`. To pomaga załadować dzieci i rodzeństwo na poziomie linku bezpośredniego, takiego jak: http://domain.com/top-level-page/. Po prostu muszę zrobić trochę stylizacji i przerobić kolejne poziomy. **Rozwiązanie CSS Update 2** Z pewną pomocą mam menu, które działa całkiem dobrze przy użyciu `wep_list_pages` i niektórych CSS. Jest to w zasadzie rozwiązanie CSS.

 <?php wp_list_pages('title_li='); ?>

 i CSS: li.current-page-ancestor a, li.current-menu-item a { color:#146BBB; //#0D55A8; } ul.children .current_page_item a:link, ul.children .current_page_item a:visited { background-color:#CCCCCC; szerokość: 250px; } .wplp_menu li{ styl listy: brak; /*miesza kropki listy, można je usunąć, jeśli zrobisz to w innym miejscu*/ } ul#top-level-sidebar { background: #5097EA; szerokość: 300px; margines: 0 10px 0 50px; pływak: lewy; } .wplp_menu .page_item a { display:brak; } .wplp_menu .bieżąca_pierwsza_strona a,.wplp_menu .dzieci .bieżąca_pozycja_strony a,.wplp_menu .bieżąca_strona_element li a { display:block; } .current_page_item a { /* CSS dla aktywnego elementu*/ font-weight:bold; } .current_page_item li a { font-weight:normal; /* Resetuje powyższe dla jego dzieci */ }


title: Na dłuższą metę lepiej jest używać daty publikacji lub niestandardowej taksonomii do sortowania/oddzielania postów według roku?

text: Mam posty typu niestandardowego, które muszę oddzielić według roku, ponieważ posty są wpisami w corocznym konkursie. Czy na dłuższą metę dla wydajności zapytań, szybkości itp. lepiej byłoby po prostu użyć wbudowanej daty publikacji lub skonfigurować niestandardową taksonomię, aby pogrupować te posty w lata? Zauważyłem, że post_date jest przechowywany w tabeli wp_posts, więc wydaje mi się, że spowoduje to szybsze zapytania niż konieczność odwoływania się do oddzielnej tabeli taksonomii. Dziękuję Ci!


title: Dodawanie nowych stron do Menu

text: Jestem nowy w Wordpress. Używam darmowego motywu na moim blogu. Dodałem Menu jako O nas, Kontakt, Grupy itp. Muszę dodać Statyczne Strony do O Nas, Kontakt itp. ..!! Nie wiem jak to stworzyć i zmapować do Menu !!


title: Jak sprawić, by wtyczka Social Media była wyświetlana w nagłówku motywu potomnego Twenty Eleven?

text: Będąc zupełnie nowym w WordPressie i (niezwykle) zardzewiałym w PHP, mam trudności z wymyśleniem, jak dodać widżet mediów społecznościowych do nagłówka mojej witryny. Używam motywu Twenty Eleven, ponieważ potrzebuję, aby witryna nie miała pasków bocznych. Najlepiej byłoby, gdyby ikony mediów społecznościowych pojawiały się nad lub pod polem wyszukiwania witryny (obraz usunięty ze względu na prywatność klienta): ![Pozycja widżetu](http://i.stack.imgur.com/xUcZu.png ) Próbowałem samouczków i szukałem w całej sieci, ale nie mogłem znaleźć niczego, co odnosiłoby się do mojej dość specyficznej sytuacji. Czy jest to zbyt trudne z tym motywem i czy powinienem po prostu używać ikon zamiast widżetu? Jestem prawie pewien, że mogę to zrobić w `functions.php` i `header.php`, ale jak?


title: Identyfikowanie postów importera

text: Biorąc pod uwagę witrynę zawierającą 100 postów, w której nieokreślona liczba postów jest pisana ręcznie, a pozostałe są tworzone za pomocą importera WordPress, w jaki sposób mógłbym programowo zidentyfikować zaimportowane posty bez dostępu do zdalnych witryn lub oryginalnego pliku importu? Np. czy ten post został stworzony przez narzędzie Importer?


title: pętla wyświetlania tylko wtedy, gdy istnieją metadane postu

text: Chcę wyświetlić następującą pętlę, tylko jeśli istnieją dane pola niestandardowego, jeśli nie, nie chcę niczego wyświetlać. <?php while (have_posts()) : the_post(); $data = get_post_meta( $post->ID, 'klucz', prawda );?> <!-- info --> <?php endwhile; ?> Jakieś zgadywanie? Z góry dziękuję.


title: Jak mogę zablokować niektóre strony motywem potomnym?

text: Używam wtyczki Woocommerce Wordpress dla witryny e-commerce. Chcę mieć możliwość ustawienia witryny w trybie innym niż e-commerce, tj. bez koszyka, kasy itp. Wiem, że można kupić wtyczkę, która to robi, ale próbuję to zrobić sam. Przypuszczam, że muszę zrobić sobie motyw potomny iw `function.php` usunąć niektóre strony. Nie chcę ich po prostu ukrywać, ponieważ użytkownik nadal może do nich przeglądać. Chciałbym zwrócić błąd 404 na dowolnej stronie e-commerce, nawet jeśli strona naprawdę istnieje. Mógłbym użyć `wp_delete_posts`, ale kiedy wrócę do motywu nadrzędnego, strony też znikną. Co radzisz?


title: Awatar autora jako domyślny pierwszy obraz

text: Potrzebuję trochę pomocy i dostosowania mojego istniejącego skryptu w function.php dla wordpress 3.5. Oto co mam. Jak widać tutaj domyślny obrazek nie istnieje, użyje $first_img = $img_dir . '/images/post-default.jpg'; Chciałabym wiedzieć, czy będzie możliwość pobrania zdjęcia autora posta. Poniżej znajdziesz cały kod związany z tą funkcją. Dzięki B4.. //////////////////////////////////////////// ///////////////////////////////// // Pobierz standardowy obraz posta ////////// //////////////////////////////////////////////// //////////////////// funkcja get_post_image() { global $post, $posts; $pierwszy_img = ''; ob_start(); ob_end_clean(); $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches); $ first_img = $matches [1] [0]; if(empty($first_img)){ //Definiuje domyślny obraz $img_dir = get_bloginfo('template_directory'); $first_img = $img_dir . '/images/post-default. jpg'; } return $first_img; }


title: Pola niestandardowe lub coś innego

text: Mam problem z wyświetlaniem niektórych treści na mojej stronie głównej. Najpierw wyjaśnię mój problem. Mam stronę ze wszystkimi moimi wpisami na blogu (użycie funkcji fragmentu). Gdy klikniesz link czytaj więcej na stronie z wpisami na blogu, otrzymasz cały artykuł. Na mojej stronie głównej chcę pokazać 3 najnowsze posty. Mam już 3 najlepsze posty. (z wykorzystaniem funkcji fragmentu) ale te **zajawki** lub za długie. Za dużo tekstu. Nie chcę skracać, bo kiedy to zrobię, zmieni się też strona ze wszystkimi wpisami na blogu. Myślałem, aby użyć niestandardowych pól w postach na blogu. Czy mogę zrobić dodatkowe pole na treść zwiastuna na stronie głównej? Czy to właściwe rozwiązanie, czy jest coś jeszcze?


title: Wyświetlanie informacji z pola niestandardowego na niestandardowym typie postu

text:
Mam filmy ustawione jako niestandardowy typ postu, a muzyka, reklama, promo ustawione jako kategorie w tym typie postu: Mam funkcję, która wyświetla niestandardowe pole meta na stronach typu postów wideo w zapleczu wordpress. Użytkownik może wprowadzić identyfikator wideo z YouTube lub identyfikator wideo vimeo - wordpress wyświetla następnie wideo dla identyfikatora na niestandardowej stronie typu post. Gdy użytkownik dodaje nowy post do niestandardowego typu postu wideo i przypisuje go do dowolnej z określonych przeze mnie kategorii, chcę, aby wordpress wyświetlał różne filmy. Kod, który mam w tej chwili, nie robi tego, co chcę, ponieważ wyświetla ten sam film w każdym poście, mimo że w niektórych z nich nie określono identyfikatora. Na przykład na stronie postu muzycznego przypisałem mu kategorię muzyka i umieściłem identyfikator wideo vimeo, który jest wyświetlany na interfejsie użytkownika, ale potem ten sam film jest wyświetlany w przypadku promocji i reklamy i nie chcę, aby tak się stało. Pętla, którą uruchomiłem to (w single-videos.php): <?php $args = array( 'post_type' => 'videos', 'posts_per_page' => 20, 'orderby' => 'date', ' zamówienie' => 'ASC' ); $pętla = nowe WP_Query( $args ); while ( $loop->have_posts() ): $loop->the_post(); //$args = array( 'post_type' => 'videos', 'posts_per_page' => 20, 'orderby' => 'date', 'order' => 'ASC' ); $ytubeID = get_post_meta($post->ID, '_youtubeID', prawda); $vimID = get_post_meta($post->ID, '_vimeoID', prawda); if ($ytubeID || $vimID){ if ($ytubeID){ echo ''; echo ''; } elseif ($vimID){ echo '
'; echo '' ; }//zakończ jeśli yutbeID lub vimIDthe_excerpt(); //dodano fragment informacyjny } endwhile; wp_reset_query(); ?> Poniżej znajduje się pełna funkcja, która tworzy metabox i przechowuje informacje: // Utwórz metabox informacji wideo, podłączając się do menu administratora postu add_action('admin_menu', 'video_add_box'); //Wywołanie funkcji przez „add_action”, aby powiedzieć, co dodać, „video_information” i gdzie „post” function video_add_box(){ add_meta_box('video_information', 'Informacje o filmie', 'video_information', 'videos', 'normal ', 'wysoki'); } //funkcja do wypełnienia pola meta dodanego powyżej function video_information(){ global $post; // Noncename potrzebne do sprawdzenia, skąd pochodzą dane echo '<input type="hidden" name="video_noncename" id="video_noncename" value="' . wp_create_nonce( plugin_basename(__FILE__) ). '" />'; //dodaje pole niestandardowe _youtubeID plus kilka innych rzeczy $youtubeID = get_post_meta($post->ID, '_youtubeID', true); if ( pusty($IDyoutube) ) { $IDyoutube = ''; } //dodaje pole niestandardowe _vimeoID $vimeoID = get_post_meta($post->ID, '_vimeoID', true); if ( pusty($vimeoID)) { $vimeoID = ''; } //dodaj pole echo '
'; echo 'Identyfikator YouTube: <input type="text" name="_youtubeID" value="' . $youtubeID . '" size="20" maxlength="30" />'; echo '
'; echo 'Identyfikator Vimeo: <input type="text" name="_vimeoID" value="' . $vimeoID . '" size="20" maxlength="30" />'; echo '
'; } //end funkcja video_information //save_video_meta jest wywoływana poniżej z akcją "save_post" i zapisuje twoje identyfikatory w funkcji post save_video_meta($post_id, $post) { // sprawdź, czy pochodzi z naszego ekranu i z odpowiednią autoryzacją, / / ponieważ save_post może być wywołany w innym czasie if ( !wp_verify_nonce( $_POST['video_noncename'], plugin_basename(__FILE__) )) { return $post->ID; } // Czy użytkownik może edytować post lub stronę? if ( !current_user_can( 'edit_post', $post->ID )){ return $post->ID; } $video_meta['_youtubeID'] = $_POST['_youtubeID']; $video_meta['_vimeoID'] = $_POST['_vimeoID']; foreach ($video_meta as $key => $value) { // Przejdź przez tablicę $video_meta if( $post->post_type == 'revision' ) return; // Nie przechowuj niestandardowych danych dwa razy $value = implode(',', (array)$value); // Jeśli $value jest tablicą, przekształć ją w CSV if(get_post_meta($post->ID, $key, FALSE)) { // Jeśli niestandardowe pole ma już wartość update_post_meta($post->ID, $key , $wartość); } else { // Jeśli niestandardowe pole nie ma wartości add_post_meta($post->ID, $key, $value); } if(!$wartość) delete_post_meta($post->ID, $klucz); // Usuń, jeśli puste }//endforeach meta wideo } //koniec save_video_meta //zapisz niestandardowe pola wideo add_action('save_post', 'save_video_meta', 1, 2);


title: Zaktualizuj tytuł posta o nazwę kategorii po edycji kategorii

text: Mam ten sklep powiązań między niektórymi kategoriami i postami, gdzie nazwa kategorii jest również nazwą postu. Kiedy dodaję nową kategorię, tworzony jest post o tym samym tytule, co kategoria. Teraz, gdy edytuję jeden z tych tytułów kategorii, chcę, aby odpowiadający mu post również automatycznie aktualizował jego tytuł. Oto co mam: function update_group($post_id) { // pobierz obiekt kategorii $category = get_term_by('id', $post_id, 'category'); // użyj obiektu, aby uzyskać swoje wartości $name = $category->name; $aktualizacje = array( 'ID' => 996, 'post_title' => $nazwa ); wp_update_post (aktualizacje $); } add_filter('edit_category' , 'update_group' ); Problem z tym prostym kodem polega na tym, że kiedy pobieram nazwę kategorii, nowa nazwa, którą przesłałem, nie została jeszcze zapisana po uruchomieniu edit_category, więc gdy po raz pierwszy edytuję kategorię, wp_update_post aktualizuje post ze starą nazwą. Oznacza to, że post otrzyma nową i poprawną nazwę tylko wtedy, gdy ponownie prześlę zmianę kategorii za pośrednictwem strony administratora. Czy można to obejść? W jaki sposób mogę uzyskać nazwę przesłanej kategorii przy pierwszym uruchomieniu edit_category?


title: Jak skonfigurować uwierzytelnianie Shibboleth dla witryny MU

text: Jak dotąd nie znalazłem łatwej w konfiguracji wtyczki, która by działała. "shibboleth" jest nieaktualny od ponad 2 lat. "Uwierzytelnianie HTTP" może działać, ale nie wiem jeszcze, jak to skonfigurować. Mam IDP skonfigurowanego do tej pracy. Używam go zarówno Drupala, jak i Moodle. Więc muszę tylko móc uruchomić Wordpress.


title: Dlaczego logowanie do mojego wp-admin przekierowuje na moją stronę główną?

text: Za każdym razem, gdy loguję się do pulpitu nawigacyjnego, będę musiał ręcznie przejść do pulpitu nawigacyjnego, ponieważ moje witryny najpierw trafiają na stronę główną. Czy jest ku temu powód? Jak przekierować do pulpitu nawigacyjnego za każdym razem, gdy loguję się w wp-admin?


title: Czy można dodawać kategorie do nowych blogów na Wordpress MU?

text: Mam skonfigurowane WP MU i potrzebuję nowych blogów, aby mieć dwie dodatkowe kategorie podczas ich tworzenia. Czy jest na to sposób?


title: Błąd w skrypcie systemu odznak w stylu Stackoverflow

text: Zmodyfikowałem stary skrypt systemu odznak inspirowany Stackoverflow, aby działał z najnowszą wersją Wordpress. Możesz zobaczyć kod tutaj (i możesz go użyć, jeśli chcesz): http://pastebin.com/zA4zGnKZ Posiada system warunków, który wykrywa `znaczniki postów`, `liczbę postów` i `liczbę komentarzy`. Możesz tworzyć niestandardowe plakietki i przypisywać im warunki. Działa doskonale poza bardzo przypadkowym błędem, którego nie mogę naprawić. Założyłem stronę testową Wordpress i utworzyłem 10 kont. Bawiłem się z użytkownikami i odznaki były przyznawane zgodnie z jego warunkami, więc na przykład, jeśli użytkownik opublikował 10 artykułów, otrzymywałby odznakę `Junior Publisher`. Jednak **jeden** użytkownik otrzymał **wszystkie** plakietki od razu po utworzeniu konta. Ten użytkownik nie ma żadnych postów ani komentarzy. Co jeszcze dziwniejsze, kiedy dodaję nową odznakę, ten użytkownik automatycznie ją otrzymuje! Nie ma różnicy między tym użytkownikiem a innymi użytkownikami. Wszyscy mają uprawnienia współtwórcy. Numer identyfikacyjny tego użytkownika to 5. **Czy możesz mi pomóc wykryć, dlaczego skrypt zachowuje się w ten sposób?** Oczywiście nie mogę jeszcze dodać skryptu do działającej witryny, bojąc się, że przypadkowi użytkownicy otrzymają wszystkie odznaki, takie jak tego użytkownika.


title: WordPress nie działa obsługa formatu postów

text: Pracuję nad motywem iz jakiegoś powodu `add_theme_support( 'post-formats', ... )` nie działa. W `functions.php` mojego motywu mam następujące u góry: function myteme_setup() { // ...inne funkcje // Dodaj wsparcie formatów postów add_theme_support( 'post-formats', array( 'na bok', 'audio ', 'czat', 'galeria', 'zdjęcie', 'link', 'cytat', 'status', 'wideo', ) ); // ... więcej innych funkcji } add_action( 'after_setup_theme', 'mytheme_setup' ); add_post_type_support( 'post', 'post-formaty' ); Jednak gdy przechodzę do administratora WordPressa -> Posty -> Edytuj nowy post lub Dodaj nowy post, nie widzę pola umożliwiającego wybór formatu posta. Próbowałem umieścić `add_post_type_support()` wewnątrz funkcji `mytheme_setup()`, ale wciąż ten sam wynik. Czy czegoś mi brakuje?


title: Ukryj listę mu-plugins

text: Używam wtyczek mu, http://codex.wordpress.org/Must_Use_Plugins. Wtyczki te są wyświetlane w plugins.php, http://d.pr/i/JIvX. Czy jest jakiś sposób, aby to ukryć? Dziękuję.


title: Jak pobrać dane profilu użytkownika/autora we wtyczce?

text: Moja witryna zawiera stronę profilu użytkownika. Z jakiegoś powodu chciałbym pobrać dane profilu użytkownika w mojej wtyczce. Wiem, że mogę pobrać dane zalogowanego profilu użytkownika za pomocą `get_currentuserinfo();`. Na przykład chciałbym uzyskać wyświetlany identyfikator użytkownika profilu. Czy ktoś może mi powiedzieć, jak to wyciągnąć.?


title: Otrzymuj posty po obliczeniu klucza meta

text: Mam 2 meta pola na posty, np. „meta_value” i „meta_count”. Oba są liczbami. Chcę podzielić `meta_value` przez `meta_count` i na podstawie wyników chcę pobrać 10 najlepszych postów. Na przykład post 1 ma meta_value 5, a meta_count 2. dzieląc wynik dla tego posta będzie równy 2,5. A post 2 ma meta_value 1 i meta_count 2, jego wynik wyniesie 0.5. Wiem, że istnieje sposób na uporządkowanie postów według określonego klucza meta: 'meta_key' => 'meta_value', 'orderby' => 'meta_value_num', ale nie wiem, czy to możliwe, co próbuję zrobić.


title: Czy istnieją ograniczenia dotyczące uchwytów filtrów?

text: Przeglądałem dzisiaj kod wtyczki innej firmy i stwierdziłem, że robią to: `add_filter('some_base_handle'.sanitize_title($string), ...)` Ciekawe, ponieważ używałem xh_prof do szukania kodu, który również zajmuje dużo czasu i byłem zdezorientowany, dlaczego było tak wiele wezwań do oczyszczenia tytułu. Czy usunięcie nazwy sanitize_title jest bezpieczne, czy istnieją dobre powody, dla których się tam znajduje? Czy ktoś ma linki do dokumentacji Codexu, o których mogłam nie wiedzieć? Spojrzałem na stronę add_filter, ale nic nie widziałem. EDYCJA: Zajrzałem do kodu wp-includes/plugins.php, aby sprawdzić, czy coś jest i nie widzę niczego wyjątkowego, ktoś wie? function add_filter( $tag, $function_to_add, $priority = 10, $accepted_args = 1 ) { global $wp_filter, $merged_filters; $ idx = _wp_filter_build_unique_id ($ tag, $ funkcja_do_dodania, $ priorytet); $wp_filter[$tag][$priority][$idx] = array('function' => $function_to_add, 'accepted_args' => $accepted_args); unset( $merged_filters[ $tag ] ); zwróć prawdę; }


Jak mogę zezwolić moderowanym anonimowym współtwórcom na publikowanie na moim blogu?


title: pokaż tylko elementy potomne menu nawigacyjnego

text: Chciałem wiedzieć, jak mogę wyświetlić tylko dzieci menu nawigacyjnego. Próbowałem kilku rzeczy, takich jak: if($post->post_type == "page"){ $postid = $post->ID; print_r( get_pages(array("child_of" => $postid)) ); } Ale wszystko otrzymuję pustą tablicę. więc chcę coś takiego: http://www.isic.org/student-card/the-isic-student-card.html


title: Pętla z przerwą pośrodku

text:
Próbuję utworzyć stronę typu galeria, która pokazuje jedną miniaturę posta z każdej kategorii postów. Kłopot w tym, że chcę wyświetlić tytuł strony i link do strony portfolio w środku dziewięciokwadratowej siatki. Pomyślałem, że najlepszym sposobem na to byłoby wyświetlenie czterech miniatur w trzech kolumnach, po których następuje tytuł strony, a następnie kolejne 4 miniatury. Mam pierwsze cztery takie jak: **Zaktualizowany kod:** <?php $count = 0; $taksonomia = 'kategoria';// np. post_tag, kategoria $param_type = 'kategoria__in'; //  np. tag__in, category__in $term_args=array( 'orderby' => 'nazwa', 'zamówienie' => 'ASC', ); $terms = get_terms($taksonomia,$term_args); if ($terms) { ?>
 <?php foreach( $terms as $term ) { $args=array( "$param_type" => array($term->term_id) , 'post_type' => 'post', 'post_status' => 'opublikuj', 'posts_per_page' => 1, 'caller_get_posts'=> 1 ); $moje_zapytanie = null; $my_query = nowe WP_Query($args); $liczba_postów = $moje_zapytanie->liczba_postów; if( $moje_zapytanie->posiadaj_posty() ) : $liczba++; if ($liczba <= 4) { while ($my_query->have_posts()) : $my_query->the_post(); ?>

<?php the_category(); ?>

<?php tytuł_(); ?>
 Kliknij po szczegóły
 <?php if (has_post_thumbnail()) : ?>
<a href= "<?php the_permalink(); ?>"><?php the_post_thumbnail(); ?>
 <?php endif; ?>
 <?php endwhile; } endif; } /* end foreach term*/ ?>

Galerie

 <a href="<?php echo home_url(); ?>/portfolio" class="btn btn-primary">Zobacz pełne portfolio

 <?php if ($count >= 4) { while ($my_query->have_posts()) : $my_query->the_post(); ?>

<?php the_category(); ?>

<?php tytuł_(); ?>
 Kliknij po szczegóły
 <?php if (has_post_thumbnail()) : ?>
<a href= "<?php the_permalink(); ?>"><?php the_post_thumbnail(); ?>
 <?php endif; ?>
 <?php endwhile; } ?>
 <?php } /* koniec jeśli terminy */ wp_reset_query(); // Odtwórz globalne dane postu, które zostały nadpisane przez the_post(). ?> Moim problemem jest druga pętla. Dotarłem do instrukcji if `if ($count > $more_cats_to_show && $count <= $max_count)`, ale nie mogę uzyskać kolejnych 4 miniatur.


title: Sprawdź, czy strona ma podstrony

text: Próbuję zbudować menu za pomocą `wp_list_pages()`, które musi działać tak: Strona główna -Podstrona1 -Podstrona2 Sprawdzam, czy strona ma_podstronę i widzę 2 podstrony, gdy jestem w nadrzędnym, ale gdy jestem m odwiedzam jedną z podstron nic nie widzę. Co więc mogę zrobić, aby sprawdzić, czy strona ma podstrony, aby uzyskać taką samą listę stron w podstronach? Jak z tego korzystam: w funkcjach sprawdzam czy Page has_subpage, function has_subpage(){ global $post; $pages = get_pages("sort_column=menu_order&depth=1&child_of={$post->ID}"); if ($pages) zwraca TRUE; } i w moim szablonie wywołam menu (lista podstron), <?php if (is_page() && has_subpage()) { ?> <?php if($post->post_parent) { $children = wp_list_pages("title_li =&child_of=".$post->post_parent."&echo=0$sort_column=menu_order"); $title_heading = get_the_title($post->post_parent); } else { $children = wp_list_pages("title_li=&child_of=".$post->ID."&echo=0"); $title_heading = get_the_title($post->ID); } if ($dzieci) { ?> <?php echo $dzieci; ?> <?php } ?> <?php } ?> problem tkwi w funkcji has_subpage(), bo jak jej nie używam to strony wyświetlają się poprawnie, może czegoś tu brakuje? wielkie dzięki!


title: Jak naprawić: Kliknięcie linku „Szybka edycja” w Admin (edit.php) sprawia, że posty znikają?

text: Kiedy jestem zalogowany i wchodzę na stronę zarządzania postami (edit.php), **jeśli kliknę przycisk 'Szybka edycja', kliknięty post znika z listy!** Dzieje się tak w FF7 i Safari 5.1, uruchomionych WP 3.2.1. Odświeżenie strony powoduje ponowne wyświetlenie wpisu na liście, ale nie mogę znaleźć sposobu na skorzystanie z funkcji Szybka edycja. Edycja: W zarządzaniu postami, po kliknięciu szybkiej edycji, Firebug wyświetla: `a("input[name=\"ping_status\"]", d).prop nie jest funkcją` w `/wp-admin/js/inline -edit-post.js?ver=20110609` Próbowałem: * Wyczyszczenie pamięci podręcznej w FF, ponowne uruchomienie FF, kilkakrotne mocne odświeżanie (zainspirowane postem Andrew Ozza o naprawieniu funkcjonalności post-edycji * Ponowna instalacja WP z pulpitu nawigacyjnego > Menu aktualizacji (powtórz czyszczenie/odświeżanie pamięci podręcznej) * Dezaktywowano najistotniejsze/ostatnie wtyczki (czyli te, które edytują obszar administracyjny, nieistotne wtyczki).Wciąż mam kilka aktywnych, ale są one kluczowe - np. Wtyczki Custom Post Type bez które witryna by się zepsuła. Niestety, nie mogę powiedzieć, kiedy to się zaczęło, tylko że dzieje się to tylko w tej witrynie. Możliwe problemy: * Kliknięcie przycisku „Opublikuj natychmiast” na stronie Edytuj post nic nie daje * Edytuj post: Dodaj tag / Wyświetl najczęściej używane tagi nie powiedzie się * Yoast SEO: nie wyświetla się w zakładkach, nie ładuje podglądu tytułu SEO itp c (wyłączyłem wtyczkę: nie rozwiązuje pozostałych problemów) * Kliknięcie przycisku wyskakującego „Edytuj obraz” ładuje półprzezroczystą nakładkę, ale bez grubego pola * Nie mogę już przesłać nowego obrazu, chociaż udało mi się to tylko pół godziny temu :( Przycisk Prześlij nic nie robi * Raport Firebug: `g.prop nie jest funkcją`, w pliku `wp-admin/js/post.js?ver=20110524` Wygląda na to, że biznes jquery / ajaxy w admin zawodzi (widząc wiele `.prop to nie funkcja`). Wcześniej miałem problem z dodawaniem linków w treści posta, dlatego wspomniałem o wcześniejszym poście. W przypadku tego problemu działało wyczyszczenie pamięci podręcznej/odświeżenie. Jestem zakłopotany! Wszelkie sugestie, jak postępować, byłyby mile widziane, Pozdrawiam, Tim Update: te linki są ładowane dwukrotnie, ale te górne nigdy się nie rozwiązują? ![Każdy plik jest ładowany dwukrotnie, ale górny nie działa](http://i.stack.imgur.com/2injM.png)


title: Link do archiwum autora z menu nawigacji na pulpicie nawigacyjnym?

text: Chciałbym wyświetlić na mojej stronie siatkę autorów zawierającą imię i nazwisko autora oraz jego awatar. Trudne jest to, że chciałbym mieć możliwość kontrolowania tego ze strony Menu na pulpicie nawigacyjnym, aby mieć kontrolę nad tym, kto jest wyświetlany iw jakiej kolejności. Czy to wykonalne? Nie sądzę, aby w takiej sytuacji sprawdził się niestandardowy chodzik, ponieważ nie pozwalałby na dowolną kontrolę kolejności i wyboru. Więc moja następna myśl to jak dodać kolejny selektor na stronie menu dla autorów. Jakaś pomoc?


title: Gdzie jest zaimplementowana domyślna funkcja wp_head()?

text: Próbuję dostosować motyw i widzę, że header.php wywołuje "wp_head()". Nie mogę znaleźć implementacji tego w motywie, więc zakładam, że istnieje domyślna implementacja, która implementuje na przykład ustawienia Opcji kolorów określone na stronie administratora. Moje powiązane pytania to: * Czy jest gdzieś ta domyślna implementacja? * Czy tę domyślną implementację można „wyłączyć”? * Czy opcja „Opcje kolorów” może być wyłączona na ekranie administratora motywu? Jeśli byłoby to łatwiejsze, proszę o wskazanie odpowiedniej dokumentacji. Spojrzałem na strony referencyjne dla funkcji wp_head() i odpowiadającego jej haka akcji wp_head, ale wydaje się, że nie dostarczają one wystarczającej ilości informacji, aby poradzić sobie z powyższymi pytaniami. Dziękuję.


title: Uporządkuj przesyłane pliki według roku, miesiąca i dnia

text: Od teraz moje przesłane pliki są uporządkowane według roku i miesiąca. Ale chciałbym je uporządkować według roku, miesiąca i dnia. Mam na myśli to, że `2012/10/30/image idzie tutaj` PS: Dostępna jest wtyczka, która to umożliwia. Ale nie chcę używać wtyczki do tego prostego zadania. Dziękuję


title: Przekieruj z ip na domenę

text: Chcę uniemożliwić dostęp do witryny przez ip. Mogła być dostępna tylko przez nazwę domeny, więc spróbowałem z trikiem htaccess. RewriteCond %{HTTP_HOST} !^moja_domena\.com [NC] RewriteRule .? http://mojadomena.com%{REQUEST_URI} [R=301,L] Załatwiło sprawę, teraz mój adres URL witryny został zmieniony na mojadomena.com zamiast na mój adres IP. Ale według mojej wiedzy nie jest to kompletne rozwiązanie. Za każdym razem, gdy zmienię permalinki, nowy htaccess zostanie wygenerowany, więc powyższy warunek zostanie usunięty. Pomyślałem więc, że muszę spróbować w index.php, spróbowałem przekierować, jeśli ip jest w adresie URL, wykonując: if(strpos($_SERVER['HTTP_HOST'],'111.111.111.11') !== false) { header( „Lokalizacja: mojadomena.com”.$_SERVER['REQUEST_URI']); } ale nic to nie dało, nadal dostęp do strony przez ip. Daj mi znać, czy moje podejście jest słuszne, czy nie. Zasugeruj mi cokolwiek innego, jeśli tam.


title: Niestandardowe parametry GET na stronie administracyjnej wtyczki

text: Na stronie opcji mojej wtyczki chciałbym mieć niestandardowe parametry GET. WordPress ma już parametr „?page=” GET, więc zwykłe łącze do czegoś takiego jak „?myparameter=value” nie zadziała. Myślałem o odczytaniu parametru „page”, a następnie linkowaniu do czegoś takiego jak: „?page=&myparameter=value”. Wydaje się to wykonalne, ale nie wiem, czy jest to najlepsza praktyka. Złożoność mojej wtyczki naprawdę nie gwarantuje na razie podstron. Czy to najlepsza praktyka, czy czegoś mi brakuje?


title: Czy istnieje sposób na pobranie postów tylko z jednym lub kilkoma kciukami w górę (wtyczka z gwiazdkami GD)?

text: Tworzę stronę internetową, która korzysta z wtyczki GD star rating. Obecnie używam następującego kodu, aby pobrać dwa posty z bieżącej strony (niestandardowy typ posta o nazwie `bbp_topic`) i posortować je według głosowania: <?php query_posts('gdsr_sort=thumbs&posts_per_page=2&post_parent='.$post ->Identyfikator); ?> Chciałbym teraz pobrać tylko te posty, które mają 1 lub więcej kciuka w górę. Jakieś sugestie?


title: Wordpress: Wstępnie wczytaj obrazy następnego posta

text: Jak mówi tytuł, chciałbym, aby w moich funkcjach pozostało trochę kodowania, które wstępnie ładuje wszystkie obrazy, które są dołączone do następnego postu. Oznacza to, że podczas gdy moi użytkownicy przeglądają, strona ładuje się, ale w rzeczywistości będzie ładować następną stronę, więc po kliknięciu obrazy powinny już tam być i czekać! Pomyśl o tym jako o „buforowaniu” obrazu. Kilka rzeczy do zapamiętania: używam funkcji post_thumbnail i ustawiam różne rozmiary za pomocą functions.php. Mam też wtyczkę, która umożliwia korzystanie z wielu polecanych obrazów na post. Zadałem to pytanie na stackoverflow (który wskazał mnie tutaj) i otrzymałem ten kod do umieszczenia w pętli; <?php $next_post = get_adjacent_post(false, '', false );// ustaw ostatni parametr na true jeśli chcesz, aby post był chronologicznie poprzedni $args = array('post_type' => 'attachment', 'numberposts' => -1, 'post_parent' => $next_post->ID); $załączniki = get_posts($args); ?> <script type="text/javascript"> $(document).ready(function(){ var images = ''; <?php foreach($attachments jako $attachment): $mime = $attachemnt->post_mime_type; if($mime == 'obraz/jpeg' || $mime == 'obraz/gif' || $mime == 'obraz/png'): ?> obrazy += '<img src="<?php $ załącznik->guid ?>" style="display:none" />'; <? endif; endforeach; ?> if(images != ''){ $(body).append(images); } }); </script> Chociaż wygląda na to, że może być zwycięzcą, wydaje się, że jeszcze nie wykonuje swojej pracy. W moim źródle strony zwraca to: <script type="text/javascript"> jQuery(document).ready(function(){ var images = ''; if(images != ''){ jQuery(body). append(obrazy); } }); </script> Możliwe, że robię coś źle, ponieważ jestem chronicznym kopiowaniem i wklejaniem! Czy ktoś ma jakieś przemyślenia na ten temat? Dzięki chłopaki!


title: Czy istnieje możliwość zmiany kolejności postów za pomocą kliknięcia użytkownika?

text: Czy istnieje sposób na zmianę kolejności postów, liczby postów itp. za pomocą kliknięcia użytkownika? W ten sam sposób możesz wybrać wyświetlanie pytań według czasu i głosować tutaj na StackExchange. Jak to zrobić?


title: Roczne archiwum z niestandardowego metaboxu daty (data rozpoczęcia wydarzenia)

text: Utworzyłem niestandardowy post_type o nazwie (event) i oto kod // Zarejestruj funkcję Custom Post Type Events custom_post_type_events() { $labels = array( 'name' => _x( 'Events', 'Post Type General Name', ' text_domain' ), 'singular_name' => _x( 'Zdarzenie', 'Pojedyncza nazwa typu posta', 'text_domain' ), 'menu_name' => __( 'Zdarzenia', 'text_domain' ), 'parent_item_colon' => __( '', 'text_domain' ), 'all_items' => __( 'Wszystkie wydarzenia', 'text_domain' ), 'view_item' => __( 'Wyświetl wydarzenie', 'text_domain' ), 'add_new_item' => __( ' Dodaj nowe wydarzenie', 'text_domain' ), 'add_new' => __( 'Nowe wydarzenie', 'text_domain' ), 'edit_item' => __( 'Edytuj wydarzenie', 'text_domain' ), 'update_it em' => __( 'Aktualizuj zdarzenie', 'text_domain' ), 'search_items' => __( 'Wyszukaj zdarzenia', 'text_domain' ), 'not_found' => __( 'Nie znaleziono zdarzeń', 'text_domain' ) , 'not_found_in_trash' => __( 'Nie znaleziono zdarzeń w Koszu', 'text_domain' ), ); $args = array( 'label' => __( 'event', 'text_domain' ), 'description' => __( 'Strony informacyjne o wydarzeniach', 'text_domain' ), 'labels' => $etykiety, 'wspiera' => array( 'tytuł', 'redaktor', 'wyciąg', 'autor', 'miniaturka', 'trackbacks', 'poprawki', 'niestandardowe-pola', 'post-formaty', ), 'taksonomie' = > array( 'category', 'post_tag' ), 'hierarchical' => false, 'public' => true, 'show_ui' => true, 'show_in_menu' => true, 'show_in_nav_menus' => true, 'show_in_admin_bar' => prawda, 'menu_position' => 5, 'menu_icon' => admin_url() .'/images/ef-events-icon.png', // Ścieżka ikony 'can_export' => prawda, 'has_archive' => prawda, 'exclude_from_search' => prawda, 'publicly_queryable' => prawda, 'capability_type' => 'strona', ); register_post_type( 'zdarzenie', $args ); } // Zaczep do akcji 'init' add_action( 'init', 'custom_post_type_events', 0 ); Następnie stworzyłem niestandardowy meta_box daty dla tego zdarzenia post_type, a oto kod add_filter( 'cmb_meta_boxes', 'dt_person_meta_boxes' ); function dt_person_meta_boxes( $meta_boxes ) { $meta_boxes[] = array( 'id' => 'dt_metabox', 'title' => 'Data i godzina zdarzenia', 'pages' => array('event'), 'context' => 'side', 'priority' => 'high', 'show_names' => true, // Pokaż nazwy pól po lewej 'fields' => array( array( 'name' => 'Event Start Date', 'desc' => 'Wybierz datę tego wydarzenia', 'id' => $prefix .'event_starttextdate', 'type' => 'text_date' ), array( 'name' => 'Data zakończenia wydarzenia', ' desc' => 'Wybierz datę tego wydarzenia', 'id' => $prefiks . 'event_endtextdate', 'type' => 'text_date' ), array( 'name' => 'Czas zdarzenia', 'desc' => 'Wprowadź czas zdarzenia (np. 17:00)', 'id' => $prefix .'event_time', 'type' => 'text', 'save' => true )) ); zwróć $meta_boxes; } * * * Moje pytanie brzmi: Jak zbudować niestandardową stronę archiwum dla niestandardowego post_type (event), która będzie sortować zdarzenia według niestandardowego meta-boksu (event_starttextdate) ??? Przykład: **2013** * Zdarzenie-1 * Zdarzenie-2 **2012** * Zdarzenie-3 * Zdarzenie-4 **2011** * Zdarzenie-5 * Zdarzenie-6 * Zdarzenie-7 * Zdarzenie-8 * * * Twoja pomoc jest doceniana, dziękuję.


title: Przepisz adres URL na podstawie danych z formularza

text: Mam formularz: <form action="<?php echo get_permalink(); ?>" method="get"> <select name="genres[]"> <option value="jazz"></option> < option value="blues"></option> <option value="rock"></option> </select> </form> Po przesłaniu formularza, w adresie URL dane wejściowe to `example.com/?genres% 5B%5D=jazz&genres%5B%5D=blues&genres%5B%5D=rock` Poza tym nie wygląda to zbyt ładnie, mam inne wejścia w mojej formie (i około 18 gatunków), więc jeśli użytkownik wybiera dużo, URL staje się bardzo długi. Nie jestem zbyt biegły w zasadach przepisywania wordpress. Chciałbym, aby adres URL zmienił się na `?genres=jazz,blues,rock`, ale byłbym również zadowolony, gdyby same znaki nie były kodem ASCII, więc adres URL to `?genres[]=jazz&genres[]=blues&genres []=kamień”. Używam również tablicy (`$genres = $_GET['genres']`) jako danych wejściowych dla zapytania, więc jeśli ją zmienię, nadal powinna być użyteczna jako tablica. Dlatego uważam, że po prostu przepisanie kodów ASCII na znaki jest najlepszą opcją.


title: Pokaż posty na stronie na podstawie kategorii i tagów

text: Szukałem tego w całym Internecie i nie znalazłem jeszcze odpowiedzi, której mógłbym użyć. Dowiedziałem się, że mogę użyć czegoś, co nazywa się query_posts lub get_posts, ale nie mam pojęcia, jak z nich korzystać. Czy nie ma jakiejś wtyczki, która mogłaby to dla mnie zrobić? Powiedzmy, że jeśli napisałem post w kategorii Poradniki, z tagiem Komputer i Internet, powinien on być wymieniony na stronie o nazwie Poradniki dla komputerów. czy to możliwe? Z góry bardzo dziękuję.


title: Jaka jest struktura pola „Polecany obraz” w DB?

text: W instalacji WP z około 1400 obrazami i wtyczką Media Tools 1.1 uruchomiłem zarówno „Importuj zewnętrzny i ustaw wyróżniony obraz”, jak i „Ustaw wyróżniony obraz”. Ale **funkcja polecanych obrazów nie działała, ponieważ wyznaczyła (w bazie danych) niewłaściwą nazwę pliku dla obrazów** : Zamiast wskazywać na poprawny plik, dodała "1" do jego nazwy, **powodując, na przykład 404 dla "Protest-11-620x264.jpg"** , **kiedy powinno wskazywać na "Protest-1-620x264.jpg"** **Muszę przeszukać i zamienić w DB na *_wp_attachment_metadata * i usuń dodatkowe „1” z nazw plików**. Oczywiście użyję wyrażenia regularnego, ale jak przetworzyć zawartość pola? **Która z sekcji danych zawiera wybrany obraz, którego należy użyć? Innymi słowy, czego potrzebuję, aby wiedzieć, że nazwa pliku jest właściwa do wyszukiwania i zastępowania? ** Na przykład (zwróć uwagę na „Protest-11-620x264.jpg” tam) _wp_attachment_metadata = a:5:{s: 5:"szerokość";i:800;s:6:"wysokość";i:536;s:4:"plik";s:22:"2013/11/Protest-11.jpg";s:5: "rozmiary";a:9:{s:9:"miniaturka";a:4:{s:4:"plik";s:22:"Protest-11-150x150.jpg";s:5:"szerokość ";i:150;s:6:"wysokość";i:150;s:9:"typ-mime";s:10:"image/jpeg";}s:6:"średni";a:4 :{s:4:"file";s:22:"Protest-11-300x201.jpg";s:5:"szerokość";i:300;s:6:"wysokość";i:201;s: 9:"typ-mime";s:10:"image/jpeg";}s:6:"slider";a:4:{s:4:"plik";s:22:"Protest-11-800x400 .jpg";s:5:"szerokość";i:800;s:6:"wysokość";i:400;s:9:"typ-mime";s:10:"image/jpeg";}s :7:"treść";a:4:{s:4:"plik";s:22:"Protest-11-620x264.jpg";s:5:"szerokość";i:620;s:6: "height";i:264;s:9:"mime-type";s:10:"image/jpeg";}s:9:"spotlight";a:4:{s:4:"plik"; s:22:"Protest-11-580x326.jpg";s:5:"szerokość";i:580;s:6:"wysokość";i:326;s:9:"typ-mim";s: 10:"image/jpeg";}s:4:"loop";a:4:{s:4:"plik";s:22:"Protest- 11-174x131.jpg";s:5:"szerokość";i:174;s:6:"wysokość";i:131;s:9:"typ-mime";s:10:"obraz/jpeg" ;}s:8:"karuzela";a:4:{s:4:"plik";s:21:"Protest-11-174x98.jpg";s:5:"szerokość";i:174;s :6:"wysokość";i:98;s:9:"typ-mime";s:10:"image/jpeg";}s:8:"cp_large";a:4:{s:4:" file";s:22:"Protest-11-300x225.jpg";s:5:"szerokość";i:300;s:6:"wysokość";i:225;s:9:"typ-mime" ;s:10:"image/jpeg";}s:8:"cp_small";a:4:{s:4:"plik";s:20:"Protest-11-70x53.jpg";s:5 :"szerokość";i:70;s:6:"wysokość";i:53;s:9:"typ-mime";s:10:"image/jpeg";}}s:10:"image_meta" ;a:10:{s:8:"aperture";d:3.5;s:6:"kredyt";s:0:"";s:6:"aparat";s:10:"NIKON D40X"; s:7:"caption";s:0:"";s:17:"created_timestamp";i:1383833520;s:9:"copyright";s:0:"";s:12:"focal_length"; s:2:"18";s:3:"iso";s:3:"200";s:13:"shutter_speed";s:7:"0.00125";s:5:"title";s: 0:"";}}


title: Lista postów oparta na zalogowanym użytkowniku

text: Byłem po całej tej stronie i google i kodeksie WP, szukając odpowiedzi na ten problem. Wiem, że tam jest i wiem, że to łatwe. Może ma coś wspólnego z user_nicename, ale po prostu nie mogę sprawić, żeby to działało. To, co staram się zrobić dla witryny, nad którą pracuję, to wyeliminować wszelkie potrzeby i możliwość zobaczenia przez użytkownika zaplecza bloga. Oznacza to wszystko na pierwszej stronie: logowanie, post, a jeśli mogę to wymachiwać - deskę rozdzielczą. Wyobrażam sobie zmianę linku „administrator witryny” w kodzie logowania/wylogowania wp na link do strony bloga o nazwie „Panel użytkownika”, użytkownik może wyświetlić listę swoich postów i komentarzy. Naprawdę sięgają po gwiazdy, powinni również widzieć listę komentarzy pod swoimi postami i naprawdę sięgają po gwiazdy – jakiś system przesyłania wiadomości. Obecnie próbuję po prostu skrócić listę postów! Nie wiem, jak zwrócić listę postów the_author na podstawie dynamicznego ustawienia, z którego pochodzi żądanie. IE: Wyświetlaj tylko posty/komentarze aktualnie zalogowanych użytkowników. Istnieje wtyczka o nazwie Full Author User List lub coś w tym stylu, która już nie działa, ponieważ jest przestarzała. Jakaś pomoc?


title: Wielkie wyzwanie dotyczące menu administracyjnego WordPressa ze stycznia 2011 r. (aka Jak rozwiązać niektóre problemy podczas modyfikowania systemu menu administracyjnego WordPressa?)

text: ## To pytanie jest nieco wyjątkowe. Jest to po części _"wyzwanie"_, które stawiam zespołowi WordPressa _( **lub ktokolwiek inny** )_ związane z biletami na trac: #16048, #16050 i #16204. ### Cel _Celem jest ominięcie trzech (3) problemów zilustrowanych na zrzucie ekranu_ poniżej podczas próby modyfikacji sekcji menu administratora WordPress: 1. Uzyskać podświetlenie strony podmenu _"Mikrowitryna"_ podczas edytowania pełnomocnika _(w tym celu musimy jakoś być w stanie zastosować "current" do pozycji podmenu,_ a niektóre hooki w funkcji _wp_menu_output() zapewnią to, co jest potrzebne)_, 2. Pobierz link do strony Attorney Menu, aby połączyć się z `/ wp-admin/edit.php?post_type=attorney` podczas edytowania pełnomocnika _ (i te same potrzebne hooki w funkcji _wp_menu_output() mogą to obsłużyć)_, oraz 3. Uzyskaj link _"Microsite"_, aby nie uruchamiał _ Błąd "Nie masz wystarczających uprawnień dostępu do tej strony"_poradzi sobie z tym problemem.) ![Zrzut ekranu dla The Great WordPress Admin Menu Challenge ze stycznia 2011](http://mikeschinkel.com/websnaps/skiched-20110115-010057.png) ### Więcej niż tylko mój przypadek użycia Te trzy (3) problemy dotyczą mojego przypadku użycia, ale są symboliczne dla problemów związanych z konfiguracją menu administratora w WordPress. Kilku członków zespołu WordPress powiedziało, że jest to łatwe, a tym samym sugerowało, że czegoś brakuje _(co może mieć rację)_, ale przyglądałem się temu problemowi od tygodni i nie wiem, jak go obejść, więc stworzyłem wtyczkę, którą patrz poniżej ( **również do pobrania z Gist**) jako najprostszy przykład użycia problemów. Kod w `admin_menu2()` jest dość hackowy, ale to prawie wszystko, co jest wymagane do modyfikacji menu administratora w WordPressie. Zauważ, że nie próbowałem użyć nowej funkcji `remove_menu_page()` ani nowej funkcji `remove_submenu_page()` w 3.1, ponieważ utworzenie wtyczki zajęłoby więcej czasu - miałem już kod w `admin_menu2()` z istniejeng projektu - i nie sądzę, aby i tak rozwiązali ten problem. ### Czego potrzebuję? Potrzebuję jednej z dwóch (2) rzeczy: 1. Rozwiązanie problemów, które ujawniam za pomocą tej wtyczki i wyjaśnij w tym pytaniu i na zrzucie ekranu _(BTW, **zdyskwalifikowam twoje rozwiązanie** jeśli używasz PHP Buforowanie danych wyjściowych w celu rozwiązania dowolnej części tego problemu)_ lub 2. Aby zespół WordPress uznał, że te haki rzeczywiście są potrzebne i aby ponownie rozważył swoją pozycję na biletach. ### Jak podejmujesz wyzwanie? 1. Pobierz i zainstaluj nieskazitelną nową kopię WordPressa 3.1 _(każda wersja prawdopodobnie wystarczy)_ , 2. Pobierz, zainstaluj i aktywuj wtyczkę _"Wielkie wyzwanie menu administratora WordPress ze stycznia 2011"_ poniżej _(lub pobierz wtyczkę z Gist)_, a następnie 3. Postępuj zgodnie z instrukcjami znajdującymi się na stronie wtyczki dla tej wtyczki _(zobacz poniższy zrzut ekranu)_, ale w zasadzie załaduj zrzut ekranu, który widzisz powyżej, a następnie spróbuj rozwiązać trzy (3) opisane problemy: ![Screenshot instrukcji wtyczki „The Great WordPress Admin Menu Challenge of Jan 2011”](http://mikeschinkel.com/websnaps/Plugins_%E2%80%B9_WordPress_3.1_Test_Site_%E2%80%94_WordPress-20110115-011459.png) # ## Jeden promień nadziei Na szczęście Andrew Nacin z zespołu WordPressa zaoferował, że przyjrzy się temu, gdy go zakodowałem, więc piszę tutaj głównie po to, aby mógł przejrzeć i skomentować, a także aby inni mogli komentować. Wiem, że jest zajęty, ale mam nadzieję, że **(lub nawet ty)** może poświęcić trochę czasu na zainstalowanie tej wtyczki na nieskazitelnej instalacji v3.1 i sprawdzić, czy może rozwiązać problem. ### Jeśli zgadzasz się, że wyzwanie jest niemożliwe? Jeśli po wypróbowaniu tego wyzwania dojdziesz do tego samego wniosku co ja i jeśli chcesz, aby menu administratora WordPressa były bardziej konfigurowalne, skomentuj te bilety śledzenia (#16048 - #16050 - #16204) i zagłosuj na to pytanie okazywać jej poparcie. ### Z przyjemnością przyznam, że coś przeoczyłem, jeśli to zrobiłem Oczywiście możliwe, że mógłbym być całkowicie martwy i ktoś mógłbywskaż dokładnie, jak to zrobić. Właściwie mam nadzieję, że tak się stanie; Wolałbym się mylić i żeby to działało, niż na odwrót. ### A oto wtyczka Możesz również **do pobrania, jeśli z Gist**: <?php /* Nazwa wtyczki: Wielkie wyzwanie dotyczące menu administracyjnego WordPressa ze stycznia 2011 Opis: "Wielkie wyzwanie dotyczące menu administracyjnego WordPressa ze stycznia 2011” został zainspirowany widocznym brakiem zrozumienia przez zespół WordPressa problemów rozwiązywanych przez zgłoszenia trac #16048 i #16050 (Zobacz także: #16204) i sugestia, aby Menu administratora Wtyczka Edytor obsługuje przypadki użycia, do których odnoszą się zgłoszenia. Debata przeniosła się na Twittera z udziałem @nacin, @aaronjorbin, @petemall, @westi, @janeforshort, @PatchesWelcome; wspierające komentarze od @ramsey, @brianlayman, @TheLeggett, retweet prostego, ale (AFAICT) niewystarczającego rozwiązania @nacin przez @vbakaitis, @Viper007Bond, @nickoris, @Znak towarowy,  @favstar_pop, @designsimply, @darylkoop, @iamjohnford, @markjaquith, @JohnJamesJacoby i @dd32. Zobacz także komentarze we wpisie na blogu @nacin zatytułowanym „Lepsza obsługa menu administratora dla typów postów w WordPress 3.1”. Pragnionym celem "wyzwania" jest po prostu znalezienie rozwiązania, które mi umknęło, lub pozyskanie tych, którzy odrzucają je jako możliwe do rozwiązania bez dodawania haczyków w WordPressie mieć namacalny przykład do zbadania w nadziei, że uznają, że rzeczywiście istnieje potrzeba przynajmniej niektórych z żądanych haków. Wyzwanie składa się z trzech (3) kroków: 1.) Uzyskaj podświetlenie strony podmenu „Mikrowitryna” podczas edytowania adwokata, 2.) Uzyskaj link do strony menu adwokata, aby połączyć tutaj podczas edytowania pełnomocnika, oraz 3.) Uzyskaj link „Mikrowitryna”, aby nie wywoływał błędu „Nie masz wystarczających uprawnień, aby uzyskać dostęp do tej strony”. Oto zrzut ekranu, który próbuje zilustrować wezwanie . Kod można znaleźć na gist tutaj. Aktywuj go jako wtyczkę w instalacji WordPress 3.1 i przejdź tutaj, aby zobaczyć zrzut ekranu ilustruje. Pamiętaj, aby najpierw załadować zrzut ekranu w innej karcie przeglądarki lub w innym oknie. Autor: Mike Schinkel URI autora: http://about.me/mikeschinkel URI wtyczki: https://gist.github.com/780709 */ if (!class_exists('TheGreatWordPressAdminMenuChallenge')) { class TheGreatWordPressAdminMenuChallenge { funkcja statyczna on_load() { add_action('init',array(__CLASS__,'init')); add_action('admin_menu',array(__CLASS__,'admin_menu1')); // Symuluje ogólną wtyczkę „Microsite” add_action('admin_menu',array(__CLASS__,'admin_menu2'),100); // Symuluje wtyczkę specyficzną dla witryny add_action('post_row_actions',array(__CLASS__,'post_row_actions'),10,2); } funkcja statyczna post_row_actions($actions,$post) { $url = admin_url(self::this_microsite_url($post->ID)); $actions = array_merge(array('microsite'=>"Mikrowitryną"),$actions); return $akcje; } static function the_microsite_editor() { echo "Jesteśmy w edytorze mikrowitryny dla " . self::tytuł_postu(); } static function admin_menu1() { if (self::this_post_id() && in_array(self::this_post_type(),array('attorney','practice_area'))) {add_submenu_page( self::this_parent_slug(), self::microsite_page_title(), self::microsite_page_title(), $capability = 'edit_posts', 'microsite', array($microsite,'the_microsite_editor') ); globalne $wp_post_types; $parent_type_meta = $wp_post_types[self::this_post_type()]; $menu globalne; $slug = fałsz; foreach($menu as $index => $menu_page) if ($menu_page[0]===$parent_type_meta->label) { $slug = $menu_page[2]; przerwanie; } if ($slug) { global $pagenow; globalne podmenu $; // Ustawienie tego powoduje, że link do mikrowitryny w menu jest podświetlany dla "bieżącej" opcji menu global $submenu_file; $submenu_file = self::this_microsite_url(); $indeks = koniec(klawisze_tablicy($podmenu[$slug])); $podmenu[$slug][$indeks][12] = $plik_podmenu; } } } funkcja statyczna this_parent_slug() { return "edit.php?post_type=" . self::this_post_type(); } funkcja statyczna post_title() { $post_id = self::this_post_id(); return ($post_id ? get_post($post_id)->post_title : false); } static function microsite_page_title() { return 'Mikrowitryna dla' . self::tytuł_postu(); } funkcja statyczna this_post_type($get_post=true) { $post_type = (isset($_GET['post_type']) ? $_GET['post_type'] : false); if (!$post_type && $get_post) { $post_id = self::this_post_id(); $post_type = get_post($post_id)->post_type; } return $post_type; } funkcja statyczna this_post_id() { $post_id = false; $post_type = self::this_post_type(false); if (isset($_GET[$post_type]))$post_id = intval($_GET[$post_type]); else if (isset($_GET['post'])) $post_id = intval($_GET['post']); zwróć $post_id; } funkcja statyczna this_microsite_url($post_id=false) { $post_type = self::this_post_type(); $post_id = $post_id ? intval($post_id) : self::this_post_id(); return "edit.php?post_type={$post_type}&page=microsite&attorney={$post_id}"; } static function admin_menu2() { // Wymagany do tego kod jest super, paskudny, brzydki i nie powinien być, ale przynajmniej *jest* wykonalny global $menu; globalne podmenu $; globalna mikrowitryna; $parent_type = self::this_post_type(); foreach(array('attorney','practice_area') as $post_type) { $slug = "edit.php?post_type={$post_type}"; if ($post_type==$parent_type) { // Jeśli mikrowitryna usuń wszystko oprócz edytora mikrowitryny $microsite_url = self::this_microsite_url(); foreach($submenu[$slug] as $submenu_index => $submenu_page) { if ($submenu_page[2]!=$microsite_url) { unset($submenu[$slug][$submenu_index]); } } } else { $submenu[$slug] = array(); } } // Usuń podmenu dla każdego menu unset($submenu['index.php']); unset($submenu['edit.php?post_type=article']); unset($submenu['edit.php?post_type=event']); unset($submenu['edit.php?post_type=case_study']); unset($submenu['edit.php?post_type=news_item']); unset($submenu['edit.php?post_type=transaction']); unset($submenu['edit.php?post_type=page']); unset($submenu['upload.php']); unset($submenu['users.php'][13]); // Usunięto "Dodaj nowy" $remove = array_flip(array( 'edit.php', 'link-manager.php', 'edit-comments.php', 'edit.php?post_type=microsite-page', )); if (!current_user_can('manage_tools')) $remove['tools.php'] = count($remove); foreach($menu jako $index => $menu_page) { if (isset($remove[$menu_page[2]])) { unset($submenu[$menu_page[2]]); unset($menu[$indeks]); } } $move = array( 'edit.php?post_type=page' => array( 'przenieś-do' => 35, 0 => 'Inne strony' ), 'separator2' => array( 'przenieś-do' => 40 ), 'upload.php' => array( 'przenieś-do' => 50, 0 => 'Biblioteka multimediów' ), ); $dodaj = tablica(); foreach($menu as $index => $menu_page) { if (isset($move[$menu_page[2]])) { foreach($move[$menu_page[2]] as $value_index => $value) { if ($value_index==='przenieś-do') { $przenieś_do = $wartość; } else { $menu_page[$value_index] =$wartość; } } $add[$przenieś_do] = $strona_menu; unset($menu[$indeks]); } } foreach($dodaj jako $indeks => $wartość) $menu[$indeks] = $wartość; add_menu_page( 'Pozycje adwokatów', 'Pozycje adwokatów', 'edit_posts', 'edit-tags.php?taxonomy=stanowisko-adwokata&post_type=attorney', false, false, 55); ksort($menu); // Trzeba posortować, bo inaczej nie wyjdzie. } static function init() { register_post_type('attorney',array( 'label' => 'Adwokaci', 'public' => true, )); register_post_type('practice_area',array( 'label' => 'Obszary ćwiczeń', 'public' => true, )); register_taxonomy('attorney-position','attorney',array( 'label'=>'Adwokatna stanowiskach”, )); register_post_type('article',array( 'label' => 'Artykuły i prezentacje', 'public' => true, )); register_post_type('case_study',array( 'label' => 'Studia przypadków', 'public' => true, )); register_post_type('news_item',array( 'label' => 'Wiadomości firmowe', 'public' => true, )); register_post_type('event',array( 'label' => 'Zdarzenia', 'public' => prawda, )); register_post_type('transaction',array( 'label' => 'Transakcje', 'public' => prawda, )); // Zainstaluj dane testowe $post_id = 10; $prawnik = get_post($post_id); if (! $ pełnomocnik) { global $ wpdb; $wpdb->insert($wpdb->posts,array('ID' => $post_id, 'post_title' => 'John Smith', 'post_type' => 'attorney', 'post_content' => 'To jest post o adwokatu Johnie Smith'ie.', 'post_status' => 'opublikuj', 'post_autor' => 1, )); } } } TheGreatWordPressAdminMenuChallenge::on_load(); } Wszystkim, którzy to czytają, mam nadzieję, że możesz pomóc. Z góry dziękuję.


title: Nie można opublikować komentarza na blogu w wp-multisite

text: Używam instalacji wp-multisite z ~100 blogami. Niedawno odkryłem bloga, na którym nie mogę skomentować (chociaż udało mi się to wcześniej). Gdy próbuję przesłać komentarz, pojawia się następujące okno dialogowe z ostrzeżeniem: ![tu wpisz opis obrazu](http://i.stack.imgur.com/ni5x4.png) pole komentarza wygląda tak: ![tutaj podaj opis obrazka](http://i.stack.imgur.com/XTGlN.png) I nic się nigdy nie dzieje. Mogę bez problemu publikować komentarze na innych blogach na wp-multisite, a dzieje się tak nawet wtedy, gdy jestem zalogowany jako superadmin.


title: Dodać film z YouTube lub Vimeo jako załącznik do posta?

text: Rozwijam wtyczkę galerii i zastanawiałem się, czy mógłbym dodać opcję „umieszczania” YouTube i Vimeo do programu do przesyłania multimediów, aby móc dodawać filmy z YouTube i Vimeo jako załączniki do posta zamiast przesyłać pliki wideo bezpośrednio do serwer. Myślę o opcji z obszarem tekstowym, w którym można umieścić kod HTML YouTube lub Vimeo, który zostanie dodany do biblioteki multimediów z typem mime „text/html”. Wszelkie wskazówki byłyby bardzo mile widziane


title: Jak zaktualizować wtyczki Wordpress do najnowszych za pomocą SVN

text: Najnowszą wersję WP mogę uzyskać za pomocą last.tar.gz http://wordpress.org/latest.tar.gz Jak zdobyć najnowsze wtyczki? Sprawdziłem o svn, muszę wiedzieć, kiedy nowa wersja jest dostępna i w poleceniu svn sw umieścić najnowszy link, więc to zła opcja. Trunk jest zły ze względu na jego rozwój, co oznacza, że nie może być stabilny, dlatego nie jest nazywany wersją stabilną. Więc dla WP użyję linku last.tar.gz Ale co zrobić z wtyczkami? Mają jeszcze jeden problem. Nie mają najnowszych. Mógłbym użyć svn, gdyby istniał sposób na automatyczne pobranie najnowszej wersji bez sprawdzania wszystkich używanych przeze mnie wtyczek, czy mają nowy numer wersji i wprowadzania go do zewnętrznego pliku svn. Więc jakie jest najlepsze rozwiązanie? Czy jest autochecker? Autopobieracz? Na stronie wiem, ale działa wolno, a mój serwer ma ograniczenia czasowe, które są zbyt małe, aby aktualizacja się zakończyła.


title: Skróty do napisów nie zawierające podpisu jako atrybutu

text: Niedawno zainstalowałem motyw bonpress i mam problem z poprawnym wyświetlaniem napisów. Im bardziej staram się zrozumieć, jak napisy mają działać w Wordpressie, tym bardziej podejrzewam, że coś się nie dzieje z moją instalacją. Podczas tworzenia posta i wstawiania obrazu z podpisem Wordpress tworzy następujący krótki kod: [caption id="attachment_40" align="alignleft" width="1024"] To właśnie otrzymuję za wydanie 15 USD na okładkę motocykla[/caption] Gdy czytam kilka stron, takich jak pierwszy przykład tutaj i przykładowy kod tutaj (używany przez bonpress), wygląda na to, że podpis powinien zostać przekazany jako atrybut, np.: [caption id="attachment_40" align="alignleft" width="1024" caption="to właśnie otrzymuję za wydanie 15 USD na pokrowiec na motocykl"][/caption] Jeśli ręcznie wprowadzę krótki kod z atrybutem `caption`, renderuje się on poprawnie. Czy coś w mojej instalacji jest uszkodzone, co sprawia, że nie buduje tego w ten sposób? **Aktualizacja:** Krótki kod podpisu jest tworzony przez `image_add_caption` w /wp-admin/includes/media.php (linia 134 w WP 3.4.2). Skróty są konstruowane poprawnie zgodnie z tym kodem, więc zastanawiam się, dlaczego cały kod, który mogę znaleźć dotyczący dostosowywania filtra `img_caption_shortcode`, zakłada, że podpis jest atrybutem?


title: Jak odtworzyć wideo bez użycia wtyczki?

text: Chcę odtwarzać wideo w mojej witrynie bez używania wtyczek. Jak mogę to zrobić?


title: Echo URL dużej wersji polecanego obrazu

text: Używam tej wtyczki, aby wyświetlić adres URL polecanego obrazu posta w nagłówku: <?php /** Nazwa wtyczki: Nagłówek FB miniatury posta */ function fb_header() { // Nie na pojedynczej stronie lub w poście? Zatrzymaj się tutaj. if ( ! is_singular() ) return; $post_ID = get_queried_object_id(); // Nie mamy miniatury? Zatrzymaj się tutaj. if ( ! has_post_thumbnail( $post_ID ) ) return; // Pobierz identyfikator załącznika $att_ID = get_post_thumbnail_id( $post_ID ); // Pobierz załącznik $att = wp_get_attachment_image_src( $att_ID ); printf( '<link rel="image_src" href="%s" />' ,array_shift( $att ) ); } add_action( 'wp_head', 'fb_header' ); ?> W obecnej formie echo jest opisywanym obrazem. Chcę, aby odzwierciedlał adres URL dużej wersji polecanego obrazu. **Jak mogę to zrobić?** Pamiętaj, że wszystkie polecane przeze mnie obrazy mają dużą wersję...


title: Jak usunąć logo paska administracyjnego w WordPress za pomocą wtyczki?

text: Postępuję zgodnie z instrukcjami na tej stronie, aby usunąć logo wordpress administratora i nie mogę do końca zrozumieć, dlaczego to nie działa we wtyczce, którą stworzyłem. // Ukryj logo WordPress w lewym górnym rogu add_action( 'admin_bar_menu', 'remove_wp_logo', 999 ); funkcja remove_wp_logo( $wp_admin_bar) { $wp_admin_bar->remove_node('wp-logo'); } Wszystko inne w mojej wtyczce działa z wyjątkiem tego. Jedyną różnicą, jaką widzę w tym przykładzie, jest to, że odnosi się do pliku functions.php? Jakieś myśli byłyby mile widziane?


title: Taksonomia niestandardowa i zapytanie_podatkowe

text: Mam wiele problemów z uruchomieniem `WP_Query` z `tax_query` w mojej niestandardowej taksonomii. Jestem na 99,9% pewien, że moja `register_taxonomy` jest poprawna, ponieważ jestem w stanie oznaczyć posty właściwym terminem, zobaczyć go w bazie danych, a właściwy termin powraca dzięki tej funkcji: http://pastebin.com/ 18Aj1ysT . Ale kiedy używam `tax_query` w moim `WP_Query`, nie otrzymuję żadnych postów. Moje zapytanie to: $nextSundayTalkArgs = array( 'post_type' => 'talk', 'posts_per_page' => 1, 'tax_query' => array( array( 'taxonomy' => 'talktype', 'field' => 'slug ', 'terms' => 'niedzielna rozmowa' ) ) ); $nextSundayTalkQuery = nowe WP_Query( $nextSundayTalkArgs ); Działa doskonale bez 'tax_query'. Jeśli zamiast tego użyję czegoś takiego jak 'talktype' => 'sunday-talk', używając query_var podczas rejestrowania taksonomii, po prostu ignoruje wiersz, ponieważ myślał, że go tam nie było i drukuje rozmowę (zamiast mówić „brak postów”) . Wstawianie `<?php echo $GLOBALS['nextSundayTalkQuery']->żądanie; ?>` daje mi to: SELECT SQL_CALC_FOUND_ROWS wp_posts.ID FROM wp_posts WHERE 1=1 AND 0 = 1 AND wp_posts.post_type = 'talk' AND ( wp_posts.post_status = 'publish' OR wp_posts.post_author = 1 AND wp_status =s. 'private' ) GROUP BY wp_posts.ID ORDER BY wp_posts.post_date DESC LIMIT 0, 1 Używanie identycznego kodu do zapytania domyślnej taksonomii „kategorii” WordPressa działa dobrze, więc wydaje się być powiązana z moją niestandardową taksonomią lub typem postu. Aby zaoszczędzić miejsce w tym poście, mój niestandardowy kod typu posta znajduje się tutaj: http://pastebin.com/LxKt2pv5, a mój niestandardowy kod taksonomii jest tutaj: http://pastebin.com/NxuuxKuG Próbowałem dołączyć `'include_children' => false` jak sugerowano, ale bez powodzenia. Byłbym wdzięczny za wszelką pomoc, ponieważ ten problem był nierozwiązywalny przez wiele miesięcy, a wiele osób próbowało (niestety bezskutecznie) dowiedzieć się, co jest nie tak.


title: Wspólne życie portfolio i bloga: wiele plików single.php?

text: Obecnie tworzę stronę internetową, która będzie oparta na Wordpressie i posiadam zarówno portfolio jak i blog. Jak powinienem zabrać się za kodowanie `single.php`? Rozumiem, że niestandardowe typy postów są dobrym rozwiązaniem, jeśli chodzi o konfigurację portfolio + blog, ale jeśli chodzi o wyświetlanie całego elementu post/portfolio, czy istnieje coś takiego jak wiele plików `single.php`? Z góry dziękuję!


title: jaka jest różnica między term_id a term_taksonomy_id?

text: tytuł mówi wszystko. W tej chwili w moich niestandardowych taksonomii otrzymuję terminy używające terminu id i nazwa taksonomii. Myślałem, że to pytanie zostałoby zadane wcześniej, ale nigdzie go nie mogę znaleźć! Pomyślałem więc, że zapytam i zobaczę, czy ktoś ma jakieś odpowiedzi. wiwaty, daithi


title: Hierarchiczne posty niestandardowe — podświetlanie bieżącego posta w podmenu

text:
Stworzyłem hierarchiczny niestandardowy typ postu o nazwie wydarzenia i użyłem wp_list_pages do wylistowania pod-postów dla każdego posta o wydarzeniu (patrz poniżej). Ta nawigacja działa świetnie, ale nie wiem, jak wyróżnić elementy menu na podstawie oglądanego posta. Zwykle używam .current_menu_item, ale ta klasa nie jest generowana dla CPT. Czy jest jakiś sposób, aby dodać tę klasę do linku do bieżącego posta? Dziękuję za pomoc! //Jeśli post ma rodzica, pobierz jego id if($post->post_parent) { $args = array( 'title_li' => '', 'child_of' => $post->post_parent, 'post_type' = > 'wydarzenia', 'echo' => 0 ); //Utwórz zmienną dla nadrzędnego identyfikatora posta $top_page = $post->post_parent; } //Jeśli post jest rodzicem, pobierz jego identyfikator else { $args = array( 'title_li' => '', 'child_of' => $post->ID, 'post_type' => 'events', ' echo' => 0 ); //Utwórz zmienną dla identyfikatora posta $top_page = $post->ID; } //Wyświetl strony podrzędne $post_children = wp_list_pages( $args ); //Pobierz tytuł strony nadrzędnej $top_title = get_the_title($top_page); //Pobierz permalink strony nadrzędnej $top_link = get_permalink($top_page); //Jeśli są dzieci, umieść je w bocznej nawigacji if ( $post_children ) { ?>
 <a href=" <?php echo $top_link; ?>">
<?php echo $top_title; ?>

 <?php echo $post_children ?>


title: Jak zoptymalizować zapytanie 'select found_rows()'? Kilka alertów o „wysokim średnim obciążeniu” dziennie

text: Mam 5000 zwykłych postów, 6000 postów w jednym typie postów i 2000 postów w innym typie postów. Nie trzeba dodawać, że dzięki temu tabela wp_posts jest dość duża. Nie wspominając o tym, że mam niestandardowe taksonomie skonfigurowane tak, aby naśladować typy wpisów, więc dla każdej firmy A wprowadzonej do typu wpisu firmy istnieje firma A, ręcznie wprowadziłem firmę A do taksonomii firmy. W ten sposób, gdy publikuję zwykły post na temat firmy A, mogę skutecznie „otagować” firmę A w poście, a następnie ten post pojawi się na niestandardowej stronie typu posta firmy A. Specyfikacja: Uruchamianie WP Super Cache z Cloudflare jako CDN. Motywem jest Wordpress TwentyEleven, ale mocno dostosowany. Serwer: 2048 RAM, 80gb Raid, 8+CPU 4x priorytet, 5000GB przepustowości. Ruch to 750 tys. wyświetleń miesięcznie i 200 tys. Zaczynam zauważać, że problemy z wydajnością rosną dość szybko, a dwa przypadki w ostatnim tygodniu, w których otrzymałem komunikat „błąd podczas łączenia z bazą danych” na stronie i musiałem ponownie uruchomić usługę mysql. Nie wspominając o wysokim obciążeniu e-maili średnio kilka razy dziennie. Uruchom zapytania debugowania. Uruchom go z WP Super Cache. Odinstalowano WP Super Cache i wypróbowano W3 Total Cache z większością włączonych opcji. W obu próbach widziałem najdłuższy czas ładowania spowodowany przez te dwa zapytania (ale tylko przy pierwszym ładowaniu! Prawie 0 przy kolejnych obciążeniach): Czas: 7.79628753662E-5 Zapytanie: SELECT FOUND_ROWS() Wywołaj z: require('wp- blog-header.php'), require_once('wp-includes/template-loader.php'), include('/themes/child-theme/index.php'), WP_Query->__construct, WP_Query->query, WP_Query ->get_posts, WP_Query->set_found_posts, W3_Db->zapytanie, W3_DbCache->zapytanie, W3_DbCallUnderlying->zapytanie, W3_Db->zapytanie, W3_DbProcessor->zapytanie, W3_Db->default_query_query-5ESE288: Zapytanie 0; Wywołaj z: require('wp-blog-header.php'), require_once('wp-includes/template-loader.php'), include('/themes/child-theme/index.php'), get_footer, locate_template , load_template, require_once('/themes/child-theme/footer.php'), wp_footer, do_action('wp_footer'), call_user_func_array, Debug_Queries->the_queries, Debug_Queries->get_queries, W3_Db->query, W3_DbCach, W3_DbCallUnderlying->query, W3_Db->query, W3_DbProcessor->query, W3_Db->default_query Usunąłem tablicę, która sprawiła, że szukaliśmy typów postów oprócz zwykłych postów, ale to nie miało znaczenia. Pełny przykładowy wynik zapytania: http://pastebin.com/L0mSXe9q Również tutaj jest kod szablonu dla głównego indeksu: <?php if ( have_posts() ) : ?> <?php /* Uruchom pętlę */ ?> <?php while ( have_posts() ): the_post(); ?> <?php if ( 'status' == get_post_format() ) { get_template_part( 'content-status', get_post_format() ); } else get_template_part( 'wyciąg', get_post_format() ); ?> <?php koniec; ?> Naprawdę nie wiesz, od czego zacząć.