title: Sortowanie postów według daty - get_blogs_of_user_id()

text: Jestem nowicjuszem, który musi utworzyć chronologiczną listę najnowszych postów ze wszystkich witryn, które użytkownik subskrybuje w sieci wielostanowiskowej WordPress. Używając poniższego kodu, jestem w stanie stworzyć listę, w której posty są uporządkowane chronologicznie (DESC), ale pogrupowane według witryn: 1. Witryna A Środa 2. Witryna A Wtorek 3. Witryna A Poniedziałek 4. Witryna B Środa 5. Witryna B Wtorek 6. Witryna B Poniedziałek Muszę stworzyć listę, w której wszystkie posty są uporządkowane chronologicznie: 1. Witryna A środa 2. Witryna B środa 3. Witryna A wtorek 4. Witryna B wtorek 5. Witryna A poniedziałek 6. Witryna B poniedziałek $ użytkownik = get_current_user_id(); $blogi = get_blogs_of_user( $użytkownik ); if( $blogs ) { foreach( $blogs as $blog ) { switch_to_blog( $blog->userblog_id ); $query = nowe WP_Query ('posts_per_page=2'); if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post(); <li> <a href="<?php echo $string; ?>$ </li> <?php endwhile; $ restore_current_blog(); } } ?> ?> Kiedy próbowałem zastosować 'zamówienie według' do WP_Query przy użyciu (nowe WP_Query( array( 'order by' => 'date' ), tworzę pierwszą listę powyżej (lista uporządkowana chronologicznie, pogrupowana według witryny). Mam wrażenie, że mam wysłać wyjście WP_Query do tablicy, sortowanie tablicy, a następnie drukowanie tego na stronie, ale ponieważ jestem bardzo nowy w tym wszystkim, naprawdę przyda mi się w tym momencie kilka wskazówek.Dzięki.


title: Formularz w niestandardowym widżecie

text:
Próbuję zbudować niestandardowy widżet formularza kontaktowego. Chciałbym więc wyświetlić formularz kontaktowy z widżetem WordPress i wysłać wiadomość. Nie ma problemu z wyświetleniem formularza z moim widżetem, ale po kliknięciu przycisku wyślij nie mogę odzyskać moich danych. Isset($_POST['my_data']) nie działa. Kiedy umieszczam kod formularza z widżetu w prostym pliku php, wszystko jest w porządku, isset($_POST['my_data']) działa dobrze. Test wykonuję za pomocą tego prostego fragmentu kodu: <?php //$form_action = ''; $form_action = get_bloginfo('url').'#contactBox'; if (isset($_POST['send'])) { echo "Isset 'wyślij' działa dobrze"; $nazwa = (isset($_POST['nazwa'])) ? $_POST['nazwa'] : ''; echo "nazwa = ".$nazwa." "; } else { echo "Coś jest NIE tak !!!"; } // Wyświetl formularz echo '<form method="post" action="'.$form_action.'">'."\n"; echo '
'."\n"; echo ' Nazwa'."\n"; echo ' <input type="text" name="name" value="'.$name.'" />'."\n"; echo '
'."\n"; echo '
<input class="prześlij" type="prześlij" name="wyślij" value="Wyślij" />
'."\n"; echo '</form>'."\n"; ?> Czy można zaimplementować formularz z niestandardowym widżetem WordPress? To jest kompletny kod mojego niestandardowego widżetu z formularzem kontaktowym: www.pixenjoy.com/documents/widget.zip Dodaję dwie wiadomości echa w tym kodzie, aby przetestować pobieranie mojego formularza danych (if(isset...) > linia 145 "ok" linia 190 "ko"


title: Jak uzyskać link do najstarszego niestandardowego typu postu (dynamicznie)

text: Czy ktoś wie, jak mogę wziąć poniższy skrypt, na który udzielono odpowiedzi za pobranie najnowszego permalinku dla niestandardowego typu postu, i przerzucić go, aby zamiast tego uzyskać najstarszy post? To jest link do pobrania najnowszego posta typu niestandardowego


title: Dodawanie dodatkowych informacji przez GET podczas rejestracji w wordpressie

text: próbuję stworzyć mały system polecający dla mojej strony. więc w tym celu ustawiłem dodatkowy parametr w adresie rejestracji jako : www.domain.com/wp-login.php?action=register`&register_me=site_name` i jeden dodaje adres ip podczas rejestracji, początkowo myślałem, że będzie prosty formularz w wp-login.php, ale właśnie dowiedziałem się, że wszystko opiera się na filtrach itp. Bardzo skomplikowane rzeczy. Ustawiłem dwa dodatkowe pola w tabeli wp_user. o nazwie `'reg_ip' i 'referral'` .. teraz muszę zrozumieć, jak dodać te dwie rzeczy w wp-login.php, aby zostały wstawione do bazy danych podczas rejestracji. Pomoc jest naprawdę mile widziana :) pozdrawiam Ayaz


title: Czy istnieje sposób na „zablokowanie” taksonomii?

text:
Zastanawiałem się, czy istnieje sposób, aby zapobiec dodawaniu nowych kategorii do taksonomii, zasadniczo „blokując” taksonomię. Programowo rejestruję taksonomię i wypełniam ją terminami przez functions.php i chciałbym, aby nie można było już do niej dodawać. ## Wizja, ZREALIZOWANE... Oto jak wyglądało moje rozwiązanie i działa świetnie! DZIĘKI wszystkim, którzy pomogli. Upvots w całym miejscu prosto w twoją twarz! // coś się dzieje przed tym... $labels = array( 'name' => _x( 'Uczestnicy', 'nazwa ogólna taksonomii' ), 'singular_name' => _x( 'Uczestnik', 'nazwa osobliwa taksonomii' ) , 'search_items' => __( 'Wyszukaj uczestników' ), 'all_items' => __( 'Wszyscy uczestnicy' ), 'edit_item' => __( 'Edytuj uczestnika' ), 'update_item' => __( 'Aktualizuj uczestnika ' ), 'add_new_item' => __( 'Dodaj nowego uczestnika' ), 'new_item_name' => __( 'Nazwa nowego uczestnika' ), 'menu_name' => __( 'Uczestnicy' ) ); $rewrite = array( 'slug' => 'uczestnik' ); $capabilities = array( 'manage_terms' => 'nobody', 'edit_terms' => 'nobody', 'delete_terms' => 'nobody', 'assign_terms' => 'nobody' ); $args = array( 'hierarchical' => true, 'labels' => $labels, 'show_ui' => true, 'query_var' => 'attendee', 'rewrite' => $rewrite, 'capabilities' => $ możliwości ); register_taxonomy('uczestnicy', 'spotkania', $args); } add_action( 'init', 'todo_create_taxonomies', 1); function todo_register_attendees() { $users = get_users(); foreach ( $users as $user ) { wp_insert_term( $user->display_name, 'uczestnicy', array('description'=> $user->display_name, 'slug' => $user->user_nicename) ); $lockdown[] = $user->user_nicename; } $terms = get_terms('uczestnicy', array('get' => 'all') ); foreach ($terms as $term) { if (!in_array($term->slug, $lockdown)) { wp_delete_term($term->term_id, 'uczestnicy'); $message = new WP_Error('force_terms', __('Tylko zarejestrowani użytkownicy mogą być uczestnikami, '. $term->name .' zostało usunięte.')); if ( is_wp_error($message)) { ?> <div id="aphid-error-<?php echo $message->get_error_code(); ?>" class="error aphid-error">
 <?php echo $wiadomość->get_error_message(); ?>

 <?php } } } } add_action( 'admin_notices', 'todo_register_attendees' );


title: Pokaż przycisk tylko dla niektórych kategorii produktów Woocommerce

text:
Próbuję dodać przycisk do moich stron produktów, który pozwala użytkownikowi poprosić o próbkę, jednak potrzebuję go tylko do wyświetlenia na produktach w określonych kategoriach. Udało mi się uruchomić przycisk, dodając ten kod do pliku meta.php:
 Poproś o próbkę

<?php echo do_shortcode(' [contact-form-7 id="269" title="Poproś o próbkę"]' ); ?>

 Ale nie jestem pewien, jak sprawić, by wyświetlał się tylko w produktach z tych kategorii. Próbowałem zawinąć mój kod w: <?php if (in_category('11,12,13')) { } ?> Ale to nie zadziałało. Myślę, że może to dlatego, że moje kategorie powstały w woocommerce. Każda pomoc będzie mile widziana! Z góry dziękuję! EDYCJA Właśnie próbowałem tego, ale nadal nic... <?php if ( is_product_category() ) { if ( is_product_category ( 'coving' ) ) { echo '
Poproś o próbkę

<?php echo do_shortcode( '[contact-form-7 id="269" title="Poproś o próbkę"]' ); ?>

'; } elseif ( is_product_category( 'skirting-boards' ) ) { echo '
Poproś o próbkę

<?php echo do_shortcode(' [contact-form-7 id="269" title="Poproś o próbkę"]' ); ?>

'; } elseif ( is_product_category( 'dado-rails' )) { echo '
Poproś o próbkę

<?php echo do_shortcode(' [contact-form-7 id="269" title="Poproś o próbkę"]' ); ?>

'; } elseif ( is_product_category( 'indirect-lighting-by-orac' ) ) { echo '
Poproś o próbkę

<? php echo do_shortcode( '[contact-form-7 id="269" title="Poproś o próbkę"]' ); ?>

'; } else { echo ' '; } }?> Czy ktoś ma inne pomysły? Dziękuję


title: Oddzielne motywy Wordpress dla każdej strony kategorii

text: Przeczytałem http://codex.wordpress.org/Category_Templates, który mówi ci, jak zmienić index.php dla każdej kategorii. Ale chcę załadować zupełnie inny katalog motywów dla mojej witryny, gdy wyświetlana jest konkretna kategoria. Na przykład, jeśli wejdę na: http://www.mojawitryna.com/mojakategoria/ załaduje osobny motyw. czy to możliwe?


title: Zapytanie o wiele kategorii

text: Czy można wyświetlić stronę kategorii wordpress, ale czy pobiera ona posty z wielu kategorii? Na przykład, powiedzmy, że muszę przekazać parametry dla `cat_id` w ten sposób /category/dining/?location=2&activity=2 I sprawić, by strona wynikowa utworzyła listę postów z kategorii określonych przez `location` i `activity `. Dziękuję!


title: Jak podłączyć się do wyrejestrowania instancji widżetu?

text: Chciałbym podłączyć się do instancji widżetu po jej usunięciu z panelu paska bocznego na stronie administratora Wyglądy -> Widgety. Więc jeśli instancja była aktywnym widżetem, a następnie została usunięta, chciałbym podłączyć się do tej instancji, zanim zostanie usunięta. Czy można to zrobić?


title: Polecany tag warunkowy rozmiaru obrazu?

text: Czy można sprawdzić, jaki rozmiar obrazu został wybrany dla polecanego obrazu i wyświetlić tylko ten obraz? Na przykład. ? > <?php the_post_thumbnail('full-thumb') ?>pokazuje duży obraz <?php endif ?> <?php the_post_thumbnail() ?>domyślny obraz, jeśli nie wybrano żadnego Nie jesteś pewien, czy to ma sens..?


title: Warunkowe włączenie Ajax

text:
Mam niestandardowy interfejs, który używa ponad 30 plików ajax podczas pracy ... niektóre pliki są używane tylko w category.php, podczas gdy inne są używane tylko w page.php ... dołączam pliki php loader ajax w moim pliku functions.php **przykład:** zawiera ŚCIEŻKA SZABLONU . '/ajaxLoops/ajax-open_client_editform.php'; uwzględnij ŚCIEŻKĘ SZABLONU . '/ajaxLoops/ajax-submit_client_editform.php'; Wszystko działa świetnie, ale kiedy próbowałem warunkowo je załadować za pomocą is_page lub is_category bezpośrednio w moim functions.php funkcje ajax przestają działać. przykład: if(is_page()) { include ŚCIEŻKA SZABLONU . '/ajaxLoops/ajax-open_client_editform.php'; } dołącz ŚCIEŻKA SZABLONU . '/ajaxLoops/ajax-submit_client_editform.php'; domyślam się, że jest to kwestia kolejności ładowania lub innych problemów, których nie jestem świadomy.... Czy możesz mi pomóc zrozumieć problem z moim podejściem lub alternatywnym sposobem warunkowego ładowania tych plików?... Pozdrawiam, sagive. **EDYCJA 1 (.PHP AJAX LOADER FILE):** <?php wp_enqueue_script( 'ajax-simple-example', get_stylesheet_directory_uri().'/ajaxLoops/ajax-simple_example.js', array('jquery'), 1.0 ); // jQuery zostanie włączone automatycznie wp_localize_script( 'ajax-simple-example', 'ajax_object', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ) ) ); // ustawienie ajaxurl add_action( 'wp_ajax_action_simple_example', 'ajax_simple_example' ); // ajax dla zalogowanych użytkowników function ajax_simple_example() { // tylko pusty przykład dla mojego pytania // w stackexchange echo '
'.$successMsg.'
'; umierać(); // zatrzymaj wykonywanie skryptu } ?>


title: Zastosuj uprawnienia na post

text: Mamy witrynę WordPress, w której mamy zewnętrznych autorów, dla których stworzyliśmy nazwy użytkowników na poziomie `Editor`. Chcemy, aby ci redaktorzy mogli tworzyć nowe posty i modyfikować własne posty, ale czasami mamy posty w toku, które wolimy zachować bardziej prywatnie. Jest to bardzo mała pula użytkowników i jeszcze mniejsza liczba postów do „ochrony”, więc jestem w porządku z każdą techniką, która wymaga wyraźnego PRZYZNANIA dla naszych własnych użytkowników lub wyraźnej ODMOWY dla użytkowników zewnętrznych. ZAPRZECZENIE byłoby oczywiście łatwiejsze, ale nie będę się wybrzydzał.


title: Użyj PHP w arkuszu stylów, aby określić obraz tła na podstawie identyfikatora kategorii

text: W moim arkuszu stylów mam nadzieję, że użyję takiego kodu... background-image: url(/wp-content/images/' .$category->cat_ID .'.jpg); ...aby pobrać inny obraz tła dla każdej kategorii. Więc będę miał obraz o nazwie 1.jpg i pokaże ten obraz jako tło elementu li, który próbuję nadać stylowi dla kategorii 1. To podejście działa dobrze w plikach szablonów takich jak ten... <img src ="/wp-content/images/'. $category->cat_ID. '.jpg"> ...ale w arkuszu stylów to nie działa. Jakieś wskazówki?


title: Jak zapisywać instancje i opcje widżetów WP

text: Jestem trochę zdezorientowany, mimo że przeczytałem całe API i szukałem godzinami. Aktywując wtyczkę dodaję wartości do bazy opcji, m.in. add_option('kod','24'); Jak zaktualizować tę wartość lub użyć jej w widżecie? Widzę teraz tylko „instancje”, jak na przykładzie na tej stronie: http://wpcoderz.com/creating-a-multi-instance-widget-with-wordpress-2-8/ Nie bardzo rozumiem, jakie są instancje , dokumentacja WP nie zawiera zbyt wielu wyjaśnień na ten temat.


title: jak powstrzymać Wordpress przed analizowaniem określonych adresów URL?

text: Mam ten niestandardowy adres URL wyszukiwania example.com/find?q=foo, na który odpowiadam, podłączając się do parse_request, ale gdy na przykład echo jakiejś testowej frazy, WP nadal analizuje to żądanie i ostatecznie wyrzuca 404 wraz z moim echem tekst. Jak mogę powstrzymać WP przed analizowaniem tego konkretnego adresu URL, a zamiast tego wykonać niestandardową obsługę i zwrócić własny szablon z folderu wtyczek?


title: Usunąć stare statystyki witryny JetPack? crypto_search_terms w najpopularniejszych wyszukiwanych hasłach

text: Stworzyłem nową stronę o baseballu. Aby stworzyć stronę, po prostu skopiowałem moją stronę piłkarską i zmieniłem/zmodyfikowałem motyw. Ponieważ po prostu skopiowałem witrynę, wszystkie statystyki witryn JetPack odnoszą się do starych statystyk witryn piłkarskich. Tak więc najlepsze posty, najlepsze wyszukiwania, całkowita liczba wyświetleń, najbardziej ruchliwe itp. Wszystkie odnoszą się do ruchu piłkarskiego. Jak mogę usunąć te stare statystyki, wszystko sprzed 26 marca 2012? Powinienem zauważyć, że stara witryna korzystała z wtyczki Wordpress.com Site Stats, ale zaktualizowałem do Jetpack po skopiowaniu do nowej witryny. Nie wiem, czy to robi różnicę, ale pomyślałem, że powinienem o tym wspomnieć. Ponadto w widżecie pulpitu nawigacyjnego dla „Najpopularniejsze wyszukiwania” wyświetla się parametr crypto_search_terms. Wyobrażam sobie, że to ze starych wyników wyszukiwania i ruchu. # AKTUALIZACJA Skontaktowałem się z twórcami JetPack w tej sprawie. Ich odpowiedź: > Mogę potwierdzić, że w tym momencie obie strony nawiązują oddzielne połączenia >, więc Twoje statystyki powinny być poprawnie zgłaszane w przyszłości. > Niestety, nie ma sposobu na oddzielenie statystyk, które już zostały > połączone. > > W przyszłości pamiętaj, aby skonfigurować bazy danych i zainstalować WordPress > dla każdej instancji osobno. >> Nie wahaj się napisać do nas, jeśli możemy udzielić dalszej pomocy. Zapytałem wtedy: > Która tabela w bazie danych kontroluje statystyki? Więc mogę go wykluczyć z > eksportu, gdy zdecyduję się ponownie skopiować witrynę? Ich odpowiedź sprawia, że wierzę, że można usunąć stare wpisy, ale po wielu e-mailach, które wymieniłem, gdy zadałem pierwsze pytanie, nie odpowiedzieli na moje ostatnie pytanie przez trzy dni.


title: Błąd 404 na stronie głównej podczas korzystania z proxy Nginx do Apache

text: Zwykle używam Nginx do obsługi zawartości statycznej na moim serwerze, a Apache obsługuje zawartość PHP za pomocą PHP-FPM. Jednak nie jestem w stanie wyświetlić strony głównej bloga Wordpress i wypróbowałem wszystkie przykłady konfiguracji, które mogę znaleźć w sieci, bez większego powodzenia. Oto moja konfiguracja Nginx: server { listen XXX.XXX.XXX.XXX:80; nazwa_serwera wptest.mojadomena.com; access_log /var/log/nginx/testblog_access.log łącznie; dziennik_błędów /var/log/nginx/testblog-error.log; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; lokalizacja / { proxy_pass http://127.0.0.1:80; } lokalizacja = /50x.html { root /var/www/nginx-default; } # Brak dostępu do plików .htaccess. lokalizacja ~ /\.ht { odrzuć wszystkie; } } Moja konfiguracja Apache wygląda następująco: <VirtualHost 127.0.0.1> ServerName wptest.mojadomena.com ServerAdmin webmaster@mojadomena.com LogLevel warn ErrorLog /var/log/apache2/testblog-error.log CustomLog /var/log/apache2/ testblog-access.log połączone Opcje +FollowSymLinks +ExecCGI -Indeksy -MultiViews AddHandler php-fastcgi .php Akcja php-fastcgi /wordpress Alias /wordpress /var/www/wordpress FastCgiExternalServer /var/www/wordpress -host 127.0.0.1:9000 RewriteEngine na DocumentRoot /var/www/wordpress DirectoryIndex index.php <Directory /> DirectoryIndex index.php AllowOverride Wszystkie opcje +FollowSymLinks +ExecCGI +SymLinksIfOwnerMatch </Directory> <Katalog /var/www/wordpress> AllowOverride All Options +FollowSymLinks +ExecCGI +SymLinksIfOwnerMatch </Directory> </VirtualHost> Nie mogę wyświetlić „http://wptest.mydomain.com/” lub „http://wptest.mydomain.com/wp-admin ", ale "http://wptest.mydomain.com/wp-login.php" działa. Co ja robię źle? Informacje o wersji: + System operacyjny: Debian 5/Lenny + Apache: 2.2.9 + Nginx: 0.7.65 + Wordpress: 3.1.2


title: Wordpress i programowanie sterowane zdarzeniami – na czym polega?

text: Chcę bardzo wyraźnie stwierdzić, że **nie** ożywia dyskusji o programowaniu funkcjonalnym/proceduralnym w porównaniu z programowaniem obiektowym. Dużo się o tym mówi na WPSE iw całej sieci. **Ale** jakiś czas temu czytam niektóre dyskusje na temat podstaw programowania Wordpressa i coś przeczytałem - muszę to przeformułować, bo niestety nie dodałem tego wtedy do zakładek - mniej więcej tak: > Jeden Jedną z atrakcyjnych rzeczy związanych z używaniem Wordpress jest to, że > dodatkowo działają w oparciu o **paradygmat oparty na zdarzeniach** programowania. Z tego, co rozumiem, _programowanie sterowane zdarzeniami_ w tym kontekście jest właściwie _synonimem_ do _sygnału_ lub _przepływu danych__ programowanie_. Ponadto - najprawdopodobniej w dużym uproszczeniu - być może główną widoczną cechą jest użycie _haków_ - akcji i filtrów - jako podpory metody. Na razie w porządku. Wydaje się dość łatwe, ale nie wychodzę z informatyki, więc jestem pewien, że jest więcej do powiedzenia. Jestem naprawdę zainteresowany pewnymi danymi wejściowymi, takimi jak: O czym tak naprawdę jest, czy też w dużym stopniu to zostało powiedziane powyżej? Czy to dodatkowy paradygmat? Jak to się ma do pozostałych? Czy to podstawowa zasada, czy tylko dodatek? Te są tuż za czubkiem głowy, ewidentnie łamią zasady, nie zadając jednego pojedynczego pytania, które ma jedną wyraźną odpowiedź, ale może raz zostanie to wybaczone.


title: Wordpress buforuje menu z Transients_API

text: Chcę w prosty sposób buforować menu strony, które zajmuje około 50 zapytań podczas ładowania strony. W tej chwili mam kod ustawień cachche z `Transients_API` <?php $housemenu = get_transient('housemenu_key'); if (!$housemenu) { $housemenu = wp_nav_menu( array('menu' => '','menu_class' => 'sf-menu','menu_id' => 'nav','walker' => nowy description_walker( ))); echo 'nieustawione'; set_transient('housemenu_key', $housemenu, 60*60*3); } echo $housemenu; ?> `$housemenu = get_transient('housemenu_key');` zwraca nic. Jeśli ustawię w ten sposób: $housemenu = 'return corrent'l echo 'not-set'; Wszystko działa idealnie. Dlaczego to menu nie działa? Menu może być spacerowiczem przemijającym? Użyj: Wordpress 3.8


title: is_home() zwraca TRUE na szablonie strony

text: Zastanawiam się, dlaczego mój link: `http://localhost/?page_id=3433` zwraca TRUE przy użyciu `is_home()`: if(is_home()){ var_dump(is_home()); die('test'); } Wyraźnie ma szablon-mycustomtemplate.php ustawiony w obszarze Strony> Ta strona w panelu administracyjnym. Czy ktoś może rzucić na to trochę światła? UPDATE: zwraca TRUE w pętli, ale FALSE poza pętlą. Mogę więc użyć obejścia, ale mimo to wygląda to na błąd, jeśli zwraca TRUE w pętli, która jest obecna w tym pliku szablonu.


title: Usuwanie posta z wyników zapytania WP

text: Mamy skomplikowane zapytanie do bazy danych i chcielibyśmy wykluczyć niektóre posty. Próbowaliśmy to zrobić za pomocą SQL, ale jest to naprawdę skomplikowane. Najprostszym rozwiązaniem wydaje się zapętlenie wyników po wykonaniu zapytania, a następnie wykluczenie kilku postów. Problem w tym, że nie wiem, gdzie to zrobić! Próbowałem usunąć posty w $wp_query->posts, ale nadal się pojawiają. Czy jest na to właściwy sposób? Czy istnieje inna tablica, której używa WordPress, z której powinienem usunąć ustawienie?


title: the_excerpt - chcesz zmodyfikować wyjście chronione hasłem

text: Chcę zmodyfikować dane wyjściowe the_excerpt, gdy nie określono fragmentu, a wpis jest chroniony hasłem. Mogę już zmodyfikować formularz chroniony hasłem na dowolny, ale the_excerpt wyświetla „Nie ma fragmentu, ponieważ jest to chroniony post”. Kod tego znajduje się w wp-includes/post-template.php: function get_the_excerpt( $deprecated = '' ) { if ( !empty( $deprecated ) ) _deprecated_argument( __FUNCTION__, '2.3' ); globalny $post; $wyjście = $post->post_excerpt; if ( post_password_required($post) ) { $output = __('Nie ma fragmentu, ponieważ jest to chroniony post.'); zwróć $wyjście; } return apply_filters('get_the_excerpt', $output); } Prostym rozwiązaniem byłoby po prostu zmienić tam kod i przejść dalej, ale jak wszyscy wiecie, zmiana plików podstawowych zasługuje na coś więcej niż policzek! Czy ktoś może mi pomóc dowiedzieć się, jak zmodyfikować ten kod w moim pliku functions.php? Dziękuję! **EDIT** : Oto kod, który wypróbowałem, ale nie działa :( add_filter('get_the_excerpt', 'improved_get_the_excerpt'); function Improve_get_the_excerpt( $deprecated = '' ) { if ( !empty( $deprecated ) ) _deprecated_argument( __FUNCTION__, '2.3' ); global $post; $output = $post->post_excerpt; if ( post_password_required($post) ) { $output = __('To jest treść testowa.'); return $output ; } } Pomysł filtrów, akcji, hooków itp. jest dla mnie zupełnie nowy, więc proszę o wyrozumiałość!Doceniam pomoc!


title: Wyświetlaj tytuł dla odwiedzających wyszukiwarki

text: Czytałem gdzieś*), że wewnątrz obiektu wp_query znajduje się część `q`, która identyfikuje odwiedzających wyszukiwarkę i pokazuje słowa kluczowe, których szukali. Obecnie pracuję lokalnie, więc nie mogę uzyskać dostępu/zobaczyć `$GLOBALS['wp_query']->q;`. Czy ktoś mógłby zmienić, czy to istnieje i/lub ma jakieś alternatywne rozwiązanie do pobrania: * _nazwa_ wyszukiwarki * _ciąg wyszukiwania_ wyszukiwany w wyszukiwarce? *) Nie pamiętam gdzie, ale miało to coś wspólnego z „lepszą stroną wyników wyszukiwania” i „podświetlaniem wyszukiwanych haseł”. -- **EDIT** -- Oto, co do tej pory otrzymałem: // zadeklaruj sam serwer jako nieprawidłowy, aby przechwytywać tylko wyniki wyszukiwania $http_referer = explode( "/", $_SERVER['HTTP_REFERER'] ); $http_referer = $http_referer[2]; $home_url = rozbij( "/", home_url() ); $home_url = $home_url[2]; // Pochodzące z wyszukiwarki: modyfikuj do ciągu wyszukiwania if ( isset( $_SERVER['HTTP_REFERER'] ) && $home_url !== $http_referer ) { // usuń poprzednie argumenty zapytania "s" remove_query_arg( 's' ); $ciąg = parse_url( $_SERVER['HTTP_REFERER'] ); $zapytanie = $ciąg['zapytanie']; $zapytanie = rozbij( "&", $zapytanie ); foreach ( $zapytanie jako $q ) { $q = urldecode( $q ); $arr = rozbij( "=", $q ); if ( (string) 'q' === $arr[0] ) $search_string = $arr[1]; } // zbuduj nowe zapytanie wyszukiwania "s" arg: jeśli isset, z ciągu wpisanego w formularzu wejściowym wyszukiwarek // teoretycznie powinno to pozwolić na traktowanie go jak normalny wynik wyszukiwania // wadą jest to, że wyszukiwanie użytkownik wyszukiwarki nigdy nie dostanie się bezpośrednio do posta lub strony if ( isset( $search_string ) ) add_query_arg( array( 's' => $search_string ) ); } Poza wadą polegającą na tym, że żaden odwiedzający wyszukiwarkę nie dotrze bezpośrednio do wyniku, nie złapałbym w ten sposób wszystkich wyszukiwarek. Google i Altavista otrzymały argument zapytania `q=searchstring`. Yahoo dla np. używa `p=`...


title: Adres strony internetowej Zachowaj przekierowanie do strony internetowej po próbie migracji

text: Mam witrynę loclhost, o której słyszałem. Mogę przeprowadzić migrację witryny, po prostu kopiując i wklejając całą witrynę z lokalnego do hosta, jeśli zmieniłem adres WordPress (URL) i adres witryny (URL) na mój obecny adres hostowanej witryny, a następnie prześlij go do host (który teraz robię) Problem polega na tym, że teraz, gdy próbuję zalogować się do mojej lokalnej witryny, zawsze przekierowuje do mojej rzeczywistej witryny. Jak mogę naprawić konfigurację witryny loclhost, aby wróciła do oryginalnego adresu loclhost? ============AKTUALIZACJA===================================== Dodano poniżej pliki do wp-config Wordpress: define('WP_SITEURL', 'http://localhost/a02business'); define('WP_HOME', 'http://localhost/a02business'); Wynik: Podczas próby zalogowania się strona będzie nadal kierowana do właściwej witryny, a nie do mojej lokalnej witryny.... Pomoc plz


title: Dylemat dotyczący typu posta niestandardowego — jak kategoryzować według kraju?

text: W witrynie, którą tworzę obecnie, mam niestandardowy wpis typu „historia”. Każdej historii można przypisać kraj. Teraz kraj może być terminem taksonomicznym, ale myślę w przyszłości o stworzeniu edytowalnej strony profilu dla każdego kraju przy użyciu niestandardowego typu postu wywołania „kraj”, zachowując jednocześnie listę artykułów na tej stronie. Jaki jest najlepszy sposób, aby to zrobić? Dan


title: Jakie problemy mogą się pojawić, jeśli usunę prefiks „wp-” z folderów i plików Wordpress?

text: Chcę ukryć znaki wordpress na mojej stronie. Więc nie chcę, żeby inni wiedzieli, że zbudowałem stronę za pomocą WordPressa. Postanowiłem więc usunąć prefiksy `wp-` ze wszystkich folderów i plików Wordpress. Usunąłem również przedrostki `wp-` z zawartości pliku za pomocą Notepad++. Więc moje pytanie brzmi, jakie problemy mogą się pojawić, jeśli usunę prefiksy `wp-` ? Z góry dziękuję.


title: Podstrony tylko elementów menu w bieżącej gałęzi przy użyciu menu niestandardowego

text: Mimo, że przeprowadziłem gruntowne rozeznanie, nie mogłem znaleźć rozwiązania. Tylko rozwiązania zbliżające się. Moje własne menu („góra”) pokazuje tę strukturę (widzisz jej część): strona 1 podstrona 1.1 kategoria A podstrona 1.1.1 podstrona 1.1.2 podstrona 1.2 kategoria B podstrona 1.2.1 podstrona 1.2.2 podstrona 1.3 kategoria C podstrona 1.3.1 podstrona 1.3.2 strona 2 strona 3 Bez CSS (rzeczywista struktura jest zdecydowanie większa) Chciałbym wyświetlić to w pasku bocznym, gdy użytkownik aktualnie przegląda stronę 1 (tylko jej elementy potomne): podstrona 1.1 podstrona 1.2 podstrona 1.3 A kiedy użytkownik aktualnie przegląda podstronę 1.1 lub któryś z jej własnych potomków menu (w tym posty w kategorii A): podstrona 1.1 kategoria A podstrona 1.1.1 podstrona 1.1.2 podstrona 1.2 podstrona 1.3 Aby umieścić słowa: Widoczne pozycje menu: * pozycje menu poziomu 2 (jeśli istnieją) * elementy potomne pozycji menu poziomu 2 tylko dla pozycji w c urrent branch (current-menu-ancestor, current-menu-parent, current-menu-item) Wypróbowałem kilka klas Custom Walker przedstawionych na tym forum, żadna z nich nie zadziałała. Próbowałem również wtyczki Advanced Menu Widget (http://wordpress.org/extend/plugins/advanced-menu-widget/), która jest bardzo (!) bliska, ale wydaje się, że jest w niej błąd. Użycie tych ustawień generalnie wykona zadanie: * Pokaż hierarchię: Tylko powiązane elementy podrzędne * Głębokość początkowa: 1 Niestety nie daje to wyniku patrząc na kategorię A ani na posty w moim przykładzie. Z góry dziękuję.


title: Wyszukiwanie WordPress: ładne adresy URL (permalinki), niestandardowe typy postów i paginacja

text:
Na mojej stronie internetowej mam trzy oddzielne pola wyszukiwania: wyszukiwanie CPT „gatunek”, wyszukiwanie CPT „glosariusz” i wyszukiwanie ogólne, które chciałbym przeszukać w typach postów „post” i „gatunek”. Moje pytania są potrójne: 1. Jaki jest najbardziej wydajny/efektywny kod do tworzenia ładnych adresów URL wyszukiwania i czy istnieje powód, dla którego WordPress nie aktywuje ich domyślnie? 2. Mając na uwadze #1, jakiego kodu muszę użyć w `searchform-species`, `searchform-glossary`, `search` i `searchresults`, aby określić, że moje wyszukiwanie gatunków zwróci tylko wyniki dotyczące gatunków, słowniczek zwróci wyniki z glosariusza itp. 3. Jak włączyć paginację? * * * Kod, który aktualnie próbuję wygląda następująco: **CODE FOR #1** add_action( 'template_redirect', 'my_rewrite' ); function my_rewrite() { if ( is_search() i false === strpos( $_SERVER['REQUEST_URI'], '/search/' ) ) { wp_redirect( get_bloginfo( 'home') . '/search/' . str_replace( ' ', '+', str_replace( '%20', '+', get_query_var('s'))) ) ); Wyjście(); } } **KOD DLA #2 i #3** _searchform.php_ <?php $search_query = get_search_query(); if (!$search_query) { $search_query = "SZUKAJ"; } ?> <form id="topbar_search" action="<?php echo home_url( '/' ); ?>" method="post">
SZUKAJ
 <input type="text" size= "50" value="<?php echo $search_query; ?>" name="s" id="s" class="topbar_longinput default-value" /> <input type="submit" value="GO" class= "topbar_submit" />
wyszukiwanie zaawansowane
 </form> _searchform-species.php_
PROFIL SZUKAJ
 <form id="profilesearch" action="<?php echo home_url( '/' ); ?>" method="post"> <input type ="ukryta" nazwa="typ" wartość="profil" /> <typ wejściowy="tekst" size="50" class="wartość domyślna" wartość="SZUKAJ" nazwa="s" /> <typ danych wejściowych ="submit" value="GO" class="profilesearch_submit" />  <input type="pole wyboru" name="showthumbnails" id="showthumbnails" class="pole wyboru" <? php if ($_POST["showthumbnails"] == "on") { echo 'checked="checked" '; } ?>/>UKRYJ MINIATURY </form> _search.php_ if (isset($_REQUEST["type"])) { switch ($_REQUEST["type")]) { case "profil" : $post_type = "gatunek"; przerwanie; case "glosariusz" : $post_type = "glosariusz"; przerwanie; domyślnie : $post_type = array( 'post', 'gatunek' ); przerwanie; } } else { $post_type = array( 'post', 'gatunek' ); } $paged = (get_query_var('paged')) ? get_query_var('stronicowane') : 1; $args = array( 's' => $search_term, 'post_type' => $post_type, 'paged' => $paged ); ?> <?php get_template_part('wyniki wyszukiwania'); ?> * * * **Obecnie dzieje się to:** Poszczególne wyszukiwania działają, ale nie działa podział na strony. Kiedy klikam przycisk `next/previous_posts_link`, dodaje `/page/2/` do adresu URL i nic nie robi. Jeśli spróbuję wywołać `get_query_var('strona')` zwraca `NULL`. Jeśli zamiast tego spróbuję wypisać „paged”, zwraca „0”. Dodatkowo, gdy użytkownik kliknie ten link, zmienna `$search_query` z _searchform.php_ jest wyświetlana jako `page/bettas` (gdzie `bettas` jest oryginalnym zapytaniem). * * * **Idealnie chciałbym, aby to się stało:** 1. W „wyszukiwaniu ogólnym” użytkownik wpisuje _betta_. Adres URL zmieni się na „/search/betta”, który zawiera listę wszystkich treści „post” lub „gatunek” zawierających słowo _betta_. 2. W "wyszukiwaniu gatunków" użytkownik wpisuje _betta_. Adres URL zmienia się na `/search/betta/species` (lub cokolwiek, co jest najlepsze dla SEO) i wyświetla listę tylko zawartości `gatunku` zawierającą słowo _betta_. 3. Ten sam użytkownik, co użytkownik #2, klika następnie przycisk **Dalej** (`poprzedni_link_postów`). Adres URL zmienia się na `/search/betta/species/page/2`, a użytkownik może zobaczyć kolejne 25 wymienionych gatunków. Jestem kompletnym nowicjuszem w zakresie przepisywania i paginacji WP, więc każda pomoc byłaby bardzo mile widziana.


title: Jak sprawić, by obszar tekstowy akceptował javascript na mojej stronie ustawień?

text: Tworzę prostą wtyczkę, która pozwoli nam dodać kod do nagłówka naszej witryny, definiując go na naszej stronie ustawień. Jednak nie udało mi się zmusić go do obsługi skryptów. To jest mój obecny kod: public function sanitize ($input) { $new_input = array(); if( isset( $wejście['kod'] ) ) $nowe_wejście['kod'] = pole_tekstowego_odczynienia( $wejście['kod'] ); zwróć $nowe_wejście; } public function code_callback() { printf( '<textarea type="text" id="code" name="pl-analytics[code]">%s</textarea>', isset( $this->options[' kod'] ) ?esc_attr( $this->opcje['kod']) : '' ); } Jak to zrobić?


title: Zmień rozmiar miniatury polecanego obrazu administratora

text: Mam niestandardowy typ posta dla suwaka i używam programu do przesyłania miniatur polecanego obrazu, aby ustawić obraz. Przeniosłem metapole Polecanego obrazu, aby znajdowało się pod sekcją tytułu w panelu administracyjnym, a teraz chciałbym, aby „miniatura” Polecanego obrazu była wyświetlana na ekranie edytora postów administratora, w proporcjonalnych wymiarach przesłanego obrazu (w tym obraz suwaka o szerokości 800 pikseli i wysokości 300 pikseli). Obecnie obraz jest wyświetlany na szerokości 266 pikseli i uważam, że to ta funkcja go kontroluje. Zdaję sobie sprawę, że modyfikacja tego jest tylko dla ascetów i nie wpłynie to na rozmiar „wyjściowy” obrazu na froncie (wiem, jak to kontrolować). Ma to na celu po prostu pokazanie użytkownikowi przesłanego obrazu we właściwych proporcjach. Obecnie używam tego do przesuwania metaboxu polecanego obrazu; // przenieś pole polecanego obrazu i zmień nazwę na add_action('do_meta_boxes', 'wpse33063_move_meta_box'); function wpse33063_move_meta_box(){ remove_meta_box( 'postimagediv', 'slider-image', 'side' ); add_meta_box('postimagediv', __('Dodaj obraz slidera'), 'post_thumbnail_meta_box', 'slider-image', 'normal', 'high'); } Widziałem w tym poście, tym i tym (bardziej związanym z TwentyTen), gdzie inni sugerowali metody wyświetlania „miniaturki” o zmienionym rozmiarze na ekranie edycji niestandardowego posta administratora. Próbowałem tych metod i żadna z nich nie działa / wszystkie zwracają błąd serwera. Chcę tylko pokazać większy wyróżniony obraz na ekranie edycji CPT administratora! Niby proste, ale czy szukam Świętego Graala ;-)


title: Wspólne kategorie dla dwóch niestandardowych typów postów

text: czy mogę użyć kategorii jako wspólnej dla więcej niż jednego niestandardowego typu postów? W takim przypadku ta sama kategoria będzie miała więcej niż jeden typ postów..


title: Jak mogę dołączyć skrypty do strony załadowanej jquery dla widżetu wordpress jquery?

text: Piszę widget wordpress z następującymi stronami 1) Mam stronę główną (master.php) - jest główną stroną wtyczki - ładuje drugą stronę (slave.php) z jQuery 2) Strona podrzędna - ma php, jquery, css itp. - jest stroną zewnętrzną Poniżej znajduje się część master.php <?php add_action('init', 'register_masterscript'); function register_masterscript() { wp_register_script( 'master_jquery', plugins_url('/js/master-script.js', __FILE__), array('jquery'), '2.5.1' ); wp_register_script( 'master_jquery2', plugins_url('/js/master.js', __FILE__), array('jquery'), '2.5.1' ); wp_register_style( 'master_style', plugins_url('/css/master_style.css', __FILE__), false, '1.0.0', 'all'); } // użycie zarejestrowanego jquery i stylu powyżej add_action('wp_enqueue_scripts', 'enqueue_masterstyle'); funkcja enqueue_masterstyle(){ wp_enqueue_script('master_jquery'); wp_enqueue_script('master_jquery2'); wp_enqueue_style( 'master_style' ); } ?> master.php ładuje slave.ph pomyślnie, ale mój problem nie polega na tym, że działania jquery ani linki nie działają. Ponieważ slave.php jest zewnętrzny, próbowałem define('WP_USE_THEMES', false); wymagaj('../../../wp-blog-header.php'); następnie <?php add_action('init', 'register_slavescript'); function register_slavescript() { wp_register_script( 'slave_jquery', plugins_url('/js/jQuery1.7.1.js', __FILE__), array('jquery'), '2.5.1' ); wp_register_script( 'slave_jquery2', plugins_url('/js/highlight.pack.js', __FILE__), array('jquery'), '2.5.1' ); wp_register_script( 'slave_jquery3', plugins_url('/js/combined.js', __FILE__), array('jquery'), '2.5.1' ); wp_register_style( 'slave_style', plugins_url('/css/slave_style.css', __FILE__), false, '1.0.0', 'all'); wp_register_script( 'slave_jquery4', plugins_url('/js/jquery.mousewheel.js', __FILE__), array('jquery'), '2.5.1' ); wp_register_script( 'slave_jquery5', plugins_url('/js/jquery.jscrollpane.min.js', __FILE__), array('jquery'), '2.5.1' ); } // użyj zarejestrowanego jquery i stylu powyżej add_action('wp_enqueue_scripts', 'enqueue_slavestyle'); funkcja enqueue_slavestyle(){ wp_enqueue_script('slave_jquery'); wp_enqueue_script('slave_jquery2'); wp_enqueue_script('slave_jquery3'); wp_enqueue_style( 'slave_style' ); wp_enqueue_script('slave_jquery4'); wp_enqueue_script('slave_jquery5'); } ?> Jeśli uruchamiasz strony bez wordpressa i bez skryptów do kolejkowania, cały kod działa dobrze Wygląda na to, że dla slave.php enqueue nie działa, jak mogę to zrobić we właściwy sposób?


title: Jak 301 wszystkich postów

text: Obecnie używam domain/%postname%/, ale zamierzam zmienić ją na domain/folder/%postname%/ - nie jestem pewien, jak 301 wszystkich postów. Gdybym miał użyć czegoś takiego jak Redirect 301 /$ domain/folder/$ to myślę, że prawdopodobnie przekierowałoby to również wszystkie strony, archiwa itp. do tej samej struktury, której nie chcę. Jak mogę to zrobić tylko dla postów? Dziękuję


title: Taksonomia niestandardowa i interfejs użytkownika WP

text:
Miałem do czynienia z następującym problemem: mam niestandardową taksonomię ‘Kraje’, która została zdefiniowana jako: /* Taksonomie */ add_action( 'init', 'build_taxonomies', 0 ); function build_taxonomies() { register_taxonomy( 'cf_country', 'post', array( 'hierarchical' => true, 'label' => 'Kraj', 'query_var' => true, 'rewrite' => true ) ); } /*Taksonomie */ Po kilku manipulacjach w function.php w moim szablonie, pojawił się on w pasku administratora. Jeśli robię posty z deski rozdzielczej, to działa idealnie. ALE Ideą witryny jest umożliwienie użytkownikom publikowania własnych postów z poziomu frontendu. Ta funkcja jest realizowana za pomocą wtyczki WP User Front End. Dodałem więc: *** funkcja wp-user-frontend/wpuf-functions.php*** custom_taxonomy_dropdown( $taxonomy, $orderby = 'data', $order = 'DESC', $limit = '-1 ', $name, $show_option_all = null, $show_option_none = null ) { $args = array( 'orderby' => $orderby, 'order' => $order, 'number' => $limit, 'hide_empty' => fałszywy,          ); $terms = get_terms( $taksonomia, $args ); $nazwa = ( $nazwa ) ? $nazwa : $taksonomia; if ( $terms ) { printf( '<select name="%s" class="postform">', esc_attr( $name ) ); if ( $show_option_all ) { printf( '<option value="0">%s</option>', esc_html( $show_option_all ) ); } foreach ( $terms as $term ) { printf( '<option value="%s">%s</option>', esc_attr( $term->slug ), esc_html( $term->name ) ); } print( '</select>' ); } } Oraz : *** wp-user-frontend/wpuf-add-post.php***
  Kraj(-y): <?php custom_taxonomy_dropdown( 'cf_country', 'data', 'ASC', '5', 'cf_country', 'Select All', 'Select None' ); ?>
Wybierz właściwy kraj, w którym chcesz umieścić swój baner.

 Teraz mam niestandardowe menu rozwijane w Dodaj -Wyślij formularz. I tu mam problem. Kiedy przesyłam post, mój niestandardowy wybór nie pojawia się w poście. Wziąłem rozwiązanie problemu z (Pole niestandardowe jako taksonomia niestandardowa?) I wygląda to tak: function save_taxonomy_data($post_id) { /* * sprawdź, czy pochodzi z naszego ekranu i z odpowiednią autoryzacją. * twój formularz powinien mieć wartość jednorazową <?php wp_nonce_field('wpuf-add-post','_wpnonce'); ?> */ if ( !wp_verify_nonce( $_POST['_wpnonce'], 'wpuf-add-post' )) { return $post_id; } // sprawdź, czy jest to procedura automatycznego zapisu. Jeśli to jest nasz formularz nie został przesłany, więc nie chcemy nic robić if ( define('DOING_AUTOSAVE') && DOING_AUTOSAVE ) return $post_id; // Sprawdź uprawnienia if ( 'page' == $_POST['wpuf_post_type'] ) { // typ postu jest ukrytym polem w wpuf_ if ( !current_user_can( 'edit_page', $post_id )) return $post_id; } else { if ( !current_user_can( 'edit_post', $post_id )) return $post_id; } // Pracuj nad wszystkimi typami postów if ( isset( $_POST['cf_country'] ) ) wp_set_object_terms( $post_id, $_POST['cf_country'], 'country' ); } add_action('wpuf_add_post_after_insert', 'save_taxonomy_data'); Może coś przegapiłem? Proszę pomóż mi! Q_Q


title: Optymalizacja wielu WP_querys w jednym połączeniu?

text: Skończyłem budować moją witrynę i zauważyłem, że ze względu na strukturę ładowanie danych zajmuje 3 sekundy, ponieważ każde WP_query odbija się między różnymi typami postów. Zastanawiałem się, czy umieściłem je w jednym uruchomieniu funkcji, więc nie muszę za każdym razem uruchamiać tablicy, czy miałoby to jakiś korzystny efekt? Niestety w tej chwili próbowałem: function get_gametitle_info() { global $post; $game_terms = get_the_terms($post, 'games_titles'); $game_con = wp_list_pluck( $game_terms, 'slug' ); $game_info = array( 'post_type'=> 'game_information', 'posts_per_page' => 1, 'post_status' => 'publish', 'order' => 'ASC', 'tax_query' => array( array( 'taksonomia ' => 'games_titles', 'field' => 'slug', 'terms' => $game_con, ), ) ); $game_info_query = nowe WP_Query( $game_info ); while ( $game_info_query->have_posts() ): $game_info_query->the_post(); $gametitleID = get_the_ID(); if (has_term('3pegi', 'wiek_ratings', $post)){ $age_terms = array('3pegi'); } if (has_term('7pegi', 'age_ratings', $post)){ $age_terms = array('3pegi', '7pegi'); } if (has_term('12pegi', 'age_ratings', $post)){ $age_terms = array(array('3pegi', '7pegi', '12pegi')); } if (has_term('16pegi', 'age_ratings', $post)){ $age_terms = array('3pegi', '7pegi', '12pegi', '16pegi'); } if (has_term('18pegi', 'age_ratings', $post)){ $age_terms = array('3pegi', '7pegi', '12pegi', '16pegi', '18pegi'); } koniec; zwróć $IDtytułuGry; zwróć $age_terms; zwróć $game_info_query; } To daje mi - Ostrzeżenie: Nieprawidłowy argument podany dla foreach() w D:\xampp\htdocs\wp-includes\functions.php w wierszu 2721 Tablica game_info musi być uruchomiona tylko raz, wtedy chciałbym, żeby była możliwość użycia tych danych zamiast wykonywania nowego uruchomienia za każdym razem na wszystkich innych pasujących zapytaniach, gdy przełączam typ postu z powrotem po użyciu wp_reset_postdata(); Przepraszam, jeśli to nie jest jasne. Innym sposobem wyjaśnienia jest to, że mam: [post [A post] post post [A post] post [B post] [A post] ] Ciągłe przełączanie wydaje mi się trochę bezcelowe, gdy tak naprawdę wystarczy wykonać wp_query tylko raz na A i B. Czy pozwoliłoby to zaoszczędzić zasoby i zmniejszyć 3-sekundowe obciążenie? Dzięki Normalna struktura wewnątrz pliku post: $currentID = get_the_ID(); $game_terms = get_the_terms($post->ID, 'games_titles'); $game_con = wp_list_pluck( $game_terms, 'slug' ); $args = array( 'post_type'=> 'game_information', 'posts_per_page' => 1, 'post_status' => 'publish', 'order' => 'ASC', 'tax_query' => array( array( 'taksonomia ' => 'games_titles', 'field' => 'slug', 'terms' => $game_con, ), )/*Wyszukaj powyższy typ postu pod kątem taksonomii i jeśli pasuje, kontynuuj*/ ); $the_query = nowe WP_Query( $args ); if($the_query->have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); $gametitleID = get_the_ID(); if (has_term('3pegi', 'age_ratings', $post->ID)){ $age_terms = array('3pegi'); } if (has_term('7pegi', 'age_ratings', $post->ID)){ $age_terms = array('3pegi', '7pegi'); } if (has_term('12pegi', 'age_ratings', $post->ID)){ $age_terms = array(array('3pegi', '7pegi', '12pegi')); } if (has_term('16pegi', 'age_ratings', $post->ID)){ $age_terms = array('3pegi', '7pegi', '12pegi', '16pegi'); } if (has_term('18pegi', 'age_ratings', $post->ID)){ $age_terms = array('3pegi', '7pegi', '12pegi', '16pegi', '18pegi'); } koniec; w przeciwnym razie: endif; wp_reset_postdata(); Aby dokładniej wyjaśnić, szukam sposobu na wywołanie wp_query raz podczas ładowania strony (specyficzne dla tej strony) i zapisanie danych jako zmiennej do użycia w nagłówku, głównym, pasku bocznym i stopce. Jednak WYMAGA odświeżania przy każdym unikalnym wczytaniu strony, ponieważ dane są bardzo dynamiczne i muszą być najnowsze. W tej chwili dzwonię do wielu wp_query, a następnie resetuję postdata za każdym razem (nawet jeśli wp_query wywołuje te same dane) ze względu na sposób, w jaki muszę przełączać się między typami postów. Najprostszy sposób, w jaki mogę to wyjaśnić - Szukam sposobu na zoptymalizowanie wielu wp_query tych samych danych w jednym wywołaniu, ale można ich używać w wielu lokalizacjach w szablonie.


title: jak uzyskać obraz załącznika do posta w pełnym rozmiarze?

text: Cześć, używam normalnej pętli, aby uzyskać zawartość postu. Celem jest pokazywanie zdjęć lub filmów na blogu. Próbowałem `the_content()` dla pętli, ale otrzymuję miniaturę, w którą wierzę, to, czego chcę, to oryginalny obraz, który powinien tam być. Oto kod <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); the_content();//dzięki temu otrzymuję średniej wielkości obrazy z treści posta, gdy jest ona ładowana przez dodanie multimediów na końcu; endif; ?> Teraz chcę pokazać pełny rozmiar obrazu dla każdego postu. Jak to zrobić. czy ktoś może pomóc?


title: używanie wp_tag_cloud z niestandardową taksonomią

text: Tworzę witrynę dla architekta, a każda strona projektu ma niestandardową taksonomię o nazwie Usługi projektowe, w której klient może dodawać różne znaczniki. Chcę je wyświetlić w chmurze tagów, więc używam tego: <?php wp_tag_cloud( array( 'taxonomy' => 'project_services', 'separator' => ', ') ); ? Jakieś pomysły?


title: Jak modyfikować określone części treści posta w WordPress

text:
Staram się wstawiać niestandardowy kod w każdym poście w Wordpress, pod warunkiem, że spełnia on określone warunki. Mój problem polega na tym, że treść musi być dodana w określonej lokalizacji, która nie jest górą ani dołem. Znam strukturę HTML postów, ponieważ wszystkie podążają za wzorcem. Zgaduję, że mogę użyć filtra, ale nie wiem, jak faktycznie uzyskać dostęp i zmodyfikować część, którą chcę. Oto jak wygląda struktura przed modyfikacją:

 ...Moja zawartość tutaj

 ...i to tak chcę później wyglądać:

 ...Moja zawartość tutaj

 ...więcej treści tutaj dodawanych dynamicznie

 **[EDIT]** Aby zapewnić lepszy pomysł, tak wygląda kod w szablonie (tylko odpowiednia część):
 <?php the_content() ?>

 <?php if(get_post_meta( $post-> ID, '_pdf_lesson_version', true )) { ?>
<a href='<?php echo get_post_meta( $post->ID, '_pdf_lection_version', true ) ?>'>ZAPISZ LEKCJĘ
 <?php } ?> <?php if(get_post_meta( $post->ID, '_word_lection_version', true )) { ?>
<a href='<?php echo get_post_meta( $post ->ID, '_word_lesson_version', true ) ?>'>DOSTOSUJ LEKCJĘ
 <?php } ?>
 <div class="fb-share-button " data-href="<?php echo get_the_permalink() ?>" data-width="200" data-type="button">

 Wszystko w `<ul class="lesson-right lekcja-przycisk nawigacji"></ul>` Muszę przejść do treści posta. Jest teraz na zewnątrz, ale musi być zawarty w strukturze treści. **[/EDIT]** Wszelka pomoc jest mile widziana. Dziękuję za poświęcenie czasu na przeczytanie.


title: Permalinki nie działają dla podwitryny

text: Mam wielostanowiskową instalację Wordpress na Nginx. Obecnie mam site1.com jako stronę główną. I dodałem nową witrynę o nazwie site2.com jako podkatalog. Zauważyłem jednak, że możesz kliknąć Administrator sieci > Witryny > Edytuj (witryna 2), możesz zmienić domenę = site2.com i path=/. Zamiast używać domain=site1.com i path=/site2. Stworzyłem pliki konfiguracyjne do nginx vhost w ramach dostępnych stron. Zarówno site1 jak i site2 działają dobrze. Teraz pytasz mnie, w czym jest problem? Problem dotyczy permalinków. Jeśli umieścisz je w /blog/%postname%/, zarówno site1 jak i site2 działają dobrze. Jeśli jednak wpiszesz site2.com/blablablaIAMFAKE, serwer przekieruje do site1.com, podczas gdy powinien pozostać w witrynie site2 i wyświetlać błąd 404. Jeśli wpiszesz site2.com/blog/blablalbalbla, 404 jest wyświetlany poprawnie. Jednym z możliwych sposobów rozwiązania tego problemu jest usunięcie /blog z permalinków. Wskazówka podana w Internecie, aby zmienić strukturę permalinków na domyślną witrynę i zmienić ją w ustawieniach administratora sieci>edytuj witrynę> na /%postname%/ działa dobrze dla witryny site1.com (witryna główna). Ale nie na site2.com. Wszelkie pomysły, co może być nie tak. Dziękuję,


title: Wyłącz gravatary w WordPressie

text: Znalazłem ten kod do wyłączenia gravatara na e-mail, ale nie działa w 100% dlaczego? Ponieważ zastępuje obraz online, ale obraz zawsze otwiera się z domeną gravatar.. function __default_local_avatar() { // to zakłada, że default_avatar.png znajduje się w wp-content/themes/active-theme/images return get_bloginfo('template_directory') . '/images/default_avatar.png'; } add_filter( 'pre_option_avatar_default', '__default_local_avatar' ); Jak usunąć żądanie z gravatara bez usuwania awatara?


title: Problem z hakiem aktywacji rejestru i folderem kopiowania

text: Hy Guys, chcę skopiować folder, aby aktywować moją wtyczkę, próbuję tego, ale to nie działa. function hyperbolic_activate() { $src = 'zawiera/mójMotyw/'; $dst = '../motywy/'; function recurs_copy($src,$dst) { $dir = opendir($src); @mkdir($dst); while(false !== ( $plik = readdir($dir)) ) { if (( $plik != '.' ) && ( $plik != '..' )) { if ( is_dir($src . ' /' .$plik)) { recurse_copy($src . '/' . $plik,$dst . '/' . $plik); } else { copy($src . '/' . $plik,$dst . '/' . $plik); } } } closedir($katalog); } } register_activation_hook( __FILE__, 'hyperbolic_activate' ); Jaki jest problem w moim kodzie?


title: Gdzie mogę znaleźć odtwarzacz wideo na ekranie edycji multimediów

text: Chcę użyć odtwarzacza wideo, który widzisz na tym zrzucie ekranu, jako odtwarzacza na mojej stronie internetowej. Gdzie mogę znaleźć kod dla tego odtwarzacza? Czy istnieje funkcja, do której mogę się podłączyć, aby wyświetlić wideo w tym odtwarzaczu? ![Ekran edycji mediów WordPress](http://i.stack.imgur.com/bOB2l.png) Dziękuję


title: 404 nie znaleziono problemu z przepisywaniem adresu URL w niestandardowej kategorii

text: Mam kategorię "nas". Próbuję zmienić strukturę linków z : > http://www.example.com/us/post-name na > http://www.example.com/post-name Wstawiłem kod w functions.php : function change_permalinks($permalink) { $permalink = str_replace("us/", "", $permalink); zwróć $permalink; } add_filter( 'post_link', 'change_permalinks', 10, 4); To zmienia linki na mojej stronie Wordpress zgodnie z oczekiwaniami. Problem polega na tym, że klikam link, otrzymuję > 404 nie znaleziono wyjątku Problem polega na tym, że wordpress nadal oczekuje starej struktury linków. Jakaś pomoc ?


title: Czy użytkownik może logować się i tworzyć posty (strony) z poziomu frontendu?

text: Pracuję nad witryną Wordpress, aby umożliwić użytkownikowi logowanie się i publikowanie posta (lub strony) z interfejsu (podobnie jak w Stackoverflow). Jeśli inna przeglądarka jest tobą zainteresowana, może przekazać darowiznę. Wiem, że są to dwie funkcjonalności, ale czy Wordpress może przynajmniej pozwolić komuś na logowanie i tworzenie postów z frontendu, czy też wtyczki mogą pomóc?


title: treść posta i treść shortcode wyświetlająca się niewłaściwie

text: Widziałem kilka pytań, które dotyczą tego problemu, ale nie mogę go uruchomić na podstawie udzielonych odpowiedzi. Mam 2 wtyczki, które sam napisałem, które wyświetlają zawartość za pomocą krótkich kodów. Obydwa muszą być wyświetlane na tej samej stronie, więc na mojej stronie mam coś takiego: [shortcode1] Some Content [shortcode2] Jednak na stronie cała treść generowana przez oba shortcode'y pojawia się nad "some Content". Czytałem, że jest to problem z nieużywaniem zwrotu. Rzeczywiście, moje wtyczki używają echa, ponieważ są to w zasadzie WP_Querys i chcę wyprowadzić pewne dane opakowane w określony kod HTML. Mam więc kilka zmiennych i robię coś takiego w pętli zapytania: <?php $foo = get_the_title(); $bar = pobierz_permalink(); echo ''.$foo.''; ?> Obie wtyczki działają, z wyjątkiem tego, że nie działają. Mam problem z przekonwertowaniem mojego użycia „echa” na prawidłowe używanie return. Próbowałem: 1.) Znajdź i zamień wszystkie „echo” na „return” (co oczywiście nie zadziałało :P) 2.) używając zmiennej, która jest równa ciągowi, który chcę wyprowadzić i zwracają zmienną na końcu funkcji (ale nadal w pętli zapytania)


title: Usuń identyfikator użytkownika przechowywany w tablicach, które same są przechowywane w meta użytkownika innego użytkownika

text: W przypadku współpracującej witryny internetowej dla firmy, identyfikator danego użytkownika jest przechowywany w metadanych innego użytkownika. Na przykład: Jeśli użytkownik A współpracuje z użytkownikiem B, identyfikator użytkownika A jest dołączany do tablicy, która zawiera kilka innych identyfikatorów użytkownika, a następnie uruchamiana jest funkcja „update_user_meta”, aby zapisać tablicę w metadanych użytkownika B. Jednak, gdy użytkownik A opuszcza firmę, jego konto jest usuwane. Akcja usuwa identyfikator użytkownika z systemu WordPress, jednak identyfikator pozostaje w tablicy przechowywanej w metadanych użytkownika B. Patrząc na większą skalę, identyfikator użytkownika A może pojawić się w kilku innych metadanych użytkownika. Ponieważ jest to ciągły proces, wielu użytkowników ma identyfikatory nieistniejących użytkowników w swoich metadanych. To bez powodu zwiększa rozmiar tablic przechowywanych w metadanych. A nieistniejące identyfikatory ciągle wyrzucają błędy wszędzie tam, gdzie dane są używane w witrynie. Doprowadziło to do całego bałaganu. Chociaż warunki warunkowe są używane w kodzie do sprawdzania istnienia identyfikatora użytkownika w WordPress, nie ma powodu, aby nadal przechowywać te nieistotne identyfikatory. Pytanie brzmi: Jak mogę usunąć nieistniejące ID użytkownika z metadanych aktywnych użytkowników? Pozdrawiam, John


title: Dlaczego `get_permalink()` tworzy dodatek. Żądanie DB bez $post->filter?

text: Obecnie pracuję nad niestandardową pętlą/zapytanie, w którym muszę dodać permalink wpisu do tablicy wpisów, które pobieram z bazy danych. Niestety `get_permalink()` generuje jedno dodatkowe żądanie DB dla każdego wywołania, które może być dość intensywne, ponieważ umieszczam **wszystkie** posty na jednej stronie. Najpierw pomyślałem, że może być tak, że wywołania `get_option( 'permalink_structure' );` _lub_ `get_option( 'default_category' );` nie są automatycznie ładowanymi opcjami, ale obie są automatycznie ładowane. Dowód tutaj: function wpse_list_autoloaded_opts() { $results = $wpdb->get_results( " SELECT nazwa_opcji, wartość_opcji FROM $wpdb->opcje WHERE autoload = 'tak'" ); echo '<pre>'; foreach( $results as $result ) if ( 'permalink_structure' === $result->option_name OR 'default_category' === $result->option_name ) echo "Nazwa: {$result->option_name}, Wartość: {$ wynik->wartość_opcji}<br />"; echo '<pre>'; } add_action( 'zamknij', 'wpse_list_autoloaded_opts' ); * * * **EDYTUJ:** Ok, udało mi się to wyśledzić do następujących linii wewnątrz funkcji `get_permalink()`. if ( is_object($id) && isset($id->filter) && 'sample' == $id->filter ) { $post = $id; $próbka = prawda; } else { $post = &get_post($id); $próbka = fałsz; } **Więc moje Q jest teraz:** Jak uniknąć uruchomienia części `else`, która wywołuje `get_post()` i wykonuje dodatkowe zapytanie? * * * **EDIT 2:** Teraz okazało się, że docBlock funkcji `get_permalink()` jest tak samo błędny jak Codex. Możesz również przekazać do funkcji cały obiekt `$post`. To rozwiązuje część `if ( is_object($id)`. **Wciąż otwarte:** Skąd mam pobrać `$post->filter` z wartością `'sample'`? * * * ** EDYCJA 3:** Dodanie `$post->filter = 'sample'` do każdego obiektu posta rozwiązuje problem. Ale pozostaje złe przeczucie, że mogę coś zepsuć. `'sample'` w `$id/$ post->filter` wydaje się dość dziwny i nie mogę się dowiedzieć, skąd pochodzi.


title: Wyświetlaj niestandardowe pole meta pola tylko wtedy, gdy wartość jest obecna

text: Po raz pierwszy bawię się w Custom Meta Boxes w WP i zastanawiałem się, jak wyświetlić pola, do których są przypisane tylko wartości. Na przykład mam meta box z identyfikatorem „plany pięter” i pole z identyfikatorem „image”, które mogę wyświetlić w następujący sposób: <img src=" <?php $custom = get_post_custom( $post->ID, 'floorplans', true);echo $custom["image"][0];?> "/> Jak ustawić ten warunek, aby wyświetlał pole tylko wtedy, gdy jest obecna wartość?


title: Zapisz metadane jako znacznik czasu, wyświetl jako „ładną” datę

text: Mam niestandardowe pole meta, to tylko proste pole tekstowe na datę wydarzenia, sformatowane: RRRR/MM/DD ... Chciałbym zapisać to jako datownik (aby móc sortować według daty wydarzenia ) i wyświetlaj tylko ładny format daty po stronie projektu (np.: 2011/09/24 staje się 24 września 2011). Używałem tego samouczka jako przewodnika: http://www.noeltock.com/web-design/wordpress/custom-post-types-events-pt1/ Ale uważam, że jest to naprawdę trudne do naśladowania i prawdopodobnie zbyt skomplikowane do czego Robię. Do tej pory mam to: function event_date(){ global $post; $custom = get_post_custom($post->ID); $data_zdarzenia = $niestandardowa["data_zdarzenia"][0]; // - pobierz format czasu wp - $date_format = get_option('date_format'); ?> <label>Data wydarzenia (RRRR/MM/DD):</label> <input name="event_date" value="<?php echo $event_date; ?>" /> <?php } Co działa przy wypluwaniu : 2011/09/25. Próbowałem dowiedzieć się, co zrobić z tym bitem $date_format, jakieś pomysły, czego mi brakuje, aby wyświetlić na interfejsie użytkownika 25 września 2011 r.? Dziękuję!


title: Dołącz podpisy

text: Używam wtyczki Meta Box, wszystko działa dobrze. Używam go do tworzenia funkcji galerii na jakimś niestandardowym typie postu i mogę wyświetlać przesłane obrazy za pomocą tego kodu: global $wpdb; $meta = get_post_meta( get_the_ID(), 'meta_key', false ); if ( ! is_array( $meta ) ) $meta = ( tablica ) $meta; if ( ! empty( $meta )) { $meta = implode( ',', $meta ); $images = $wpdb->get_col( "SELECT ID FROM {$wpdb->posts} WHERE post_type = 'załącznik' AND ID IN ( {$meta} ) ORDER BY menu_order ASC" ); foreach ( $images as $att ) { // Pobierz źródło obrazu na podstawie rozmiaru, może być 'thumbnail', 'medium', 'large', 'full' lub zarejestrowane rozmiary miniaturek postów $src = wp_get_attachment_image_src( $att, 'full ' ); $src = $src[0]; // Pokaż obrazek echo "<img src='{$src}' />"; } } Pokazane są obrazy, ale chcę również wyświetlić podpisy z każdego obrazu. Jak mogę to zrobić?


title: przycisk zamawiania opcji woocommerce nie działa

text: Czy ktoś może mi pomóc, montuję stronę eCommerce i korzystam z wtyczki WooCommerce, wszystko u mnie w porządku, jednak nie działa opcja „Wybierz Sortuj produkty dla”. Czy czegoś mi brakuje? Link do strony projektu.


title: Selektor formatu postu w klasie post tematycznych tematów potomnych

text: Mam trudności z zaimplementowaniem formatów postów w moim tematycznym motywie potomnym. Jestem w stanie dodać obsługę motywu formatu postu i dodać zawartość za pomocą dużego wyrażenia warunkowego, ale selektory `.format-video` itp. nie pojawiają się w klasie postu, więc mogę ich użyć do stylizacji formatów. Według niektórych testów echa selektor pojawia się tak, jak powinien w `post_class()`, ale nigdzie nie można go znaleźć w `thematic_post_class()`. Próbowałem usunąć `thematic_post_class()`, aby zamiast tego pozwolić funkcji `post_class()`: // usuń thematic_post_class, aby dołączyć selektor formatu post do funkcji klasy post childtheme_override_post_class() { remove_action('thematic_post_class','thematic_access', 9); } add_action('init', 'childtheme_override_post_class'); Dzięki tej funkcji `thematic_post_class()` nie jest już echem, ale motyw nadal nie rejestruje selektorów formatu. Widziałem w innym poście, że hak akcji `after_setup_theme` działał, aby włączyć formaty w potomku Twenty-Ten - próbowałem tego w moim motywie, ale nie zrobiło to żadnej różnicy: function wpfolio_add_format_support() { add_theme_support( 'post-formats', array( ' na bok”, „galeria”, „wideo”, „link”, „zdjęcie”, „cytat”) ); } add_action('after_setup_theme', 'wpfolio_add_format_support', 11);` Jakieś pomysły? Z góry dziękuję


title: Ustaw wstawiony obraz jako punkt URL posta zamiast strony załącznika

text: Wstawiam obraz do posta i chcę, aby wskazywał stronę szczegółów posta, a nie załącznik. Co powinienem zrobić? Z góry dziękuję.


title: Pytasz o adresy e-mail dla listy użytkowników o tym samym nazwisku?

text: Mam witrynę z wieloma użytkownikami i wielu z nich ma to samo nazwisko. Chcę otrzymywać e-maile wszystkich użytkowników o tym samym nazwisku (IE: Smith), które mają post związany z określonym terminem taksonomicznym (IE: Baseball). Do tej pory mam ten kod, który działa świetnie w pozyskiwaniu wszystkich użytkowników o tym samym nazwisku (dzięki Mike Schinkel). Jestem do niczego przy korzystaniu z funkcji JOIN, ale uczę się i naprawdę potrzebuję tego wcześniej niż później, więc potrzebuję pomocy. $sql =<<<SQL SELECT {$wpdb->users}.user_email, {$wpdb->usermeta}.meta_value FROM {$wpdb->users} LEWY DOŁĄCZ {$wpdb->usermeta} ON {$wpdb-> users}.ID = {$wpdb->usermeta}.user_id GDZIE 1=1 AND {$wpdb->users}.user_status = '0' AND {$wpdb->usermeta}.meta_key = 'last_name' AND {$wpdb ->usermeta}.meta_value = 'Smith' SQL; $usersemails = $wpdb->get_results($sql); header('Typ treści:tekst/zwykły'); print_r($usersemails); Twój czas jest bardzo ceniony i oddam go dalej. Dziękuję.


title: Lokalizacja nagłówka

text: Edytuję wtyczkę i muszę to zrobić tak, aby ta linia `<h4><span><strong>100%</strong></span>`, która kończy się utworzeniem okręgu z liczbą w nim, pokazywał w prawym górnym rogu witryny zamiast w losowym miejscu, jak mogę ustawić go tak, aby znajdował się w określonym obszarze? To jest linia, którą należy przenieść, `<h4><span><strong>100%</strong></span>` Dziękuję i przepraszam za noobish pytanie


title: Potrzebne 404 porady dotyczące wyrażenia regularnego

text: Ciężko pracowałem, próbując zrozumieć wyrażenia regularne do użycia w mojej witrynie internetowej za pomocą wtyczki przekierowania. W ciągu ostatniego roku kilka razy zmieniałem swoje permalinki, ponieważ nie wiedziałem lepiej lub miałem niewłaściwą radę. Skutkiem tego jest to, że narzędzia webmastera Google pokazują setki błędów 404. Postanowiłem rozwiązać problem 404 za pomocą przekierowań i wiem, że nie mam już doświadczenia w naprawie, a ta strona jest najlepsza, z jaką się spotkałem w ciągu ostatnich kilku dni, która wydaje się mieć kompetentnych i pomocnych ekspertów w tej dziedzinie. Chciałbym się naprawić, ponieważ znam struktury moich permalinków z błędami 404 na podstawie pobrania narzędzi dla webmasterów i czuję się komfortowo używając wyrażeń regularnych we wtyczce przekierowania, ale jeśli jest to poza zakresem majsterkowania, byłbym bardzo zainteresowany zapłaceniem komuś za poprawienie. Oto różnorodność dawnych permalinków. Ciąg = /2010/10/02/abcd-abcd-124/ Ciąg = /2010/10/02/abcd-abcd-124 Ciąg = /2010/10/02/abcd-abcd-abcd-2-1234/ Ciąg = /2010/10/abcd-abcd-abcd-2-1234/ Ciąg = /2010/10/02/abcd-abcd-abcd-2-123 Ciąg = /2010/10/02/abcd-abcd-abcd-2- 123/ String = /2010/10/02/abcd-abcd/ String = /2010/10/02/abcd-abcd-2/ String = /2010/10/02/abcd-abcd/feed String = abcd String = / nazwa strony internetowej/abcd (najnowsze, indeksowanie sieci) Większość błędów 404 dotyczy tego ciągu rok/miesiąc/dzień/postname-postID/ (z ukośnikiem i bez niego) To, co chcę zrobić, to usunąć identyfikator posta z permalinków, przekierowanie do nowej struktury permalinka %year%%postname% Odniosłem pewne sukcesy z tym wyrażeniem regularnym: string:/2010/01/02/green-reach-22-9137 regex: /2010/(\d+)/(\d+) /((.*\W+)) wynik:/2010/01/02/green-reach-22- jednak nie potrafię rozgryźć, jak rozebrać kreskę - przed postID byłbym bardzo wdzięczny za każdą radę, próbowałem godzinami używając narzędzia regex do znalezienia wyrażenia, które w orks , ale jestem zakłopotany ..... DZIĘKI !!


title: Ostrzeżenie o uprawnieniach w wordpressie multisite

text: Pracuję nad jednym projektem dla klienta, który ma zainstalowanych kilka multisite w wordpressie. Witryna działa dobrze, ale po kliknięciu łącza Wideo na stronie głównej pojawia się komunikat ostrzegawczy. Komunikat jest pokazany poniżej: Rocktron UK Ostrzeżenie: file_put_contents(cache/ecd2071956f5730430b8b710d168a85d.spc) [function.file-put-contents]: failed aby otworzyć strumień: Odmowa uprawnień w /home/default/rktron.devstars.net/user/htdocs/simplepie.inc w wierszu 8671 Ostrzeżenie: pamięć podręczna nie jest zapisywalna. Upewnij się, że ustawiono poprawną ścieżkę względną lub bezwzględną oraz że lokalizacja jest dostępna do zapisu przez serwer. w /home/default/rktron.devstars.net/user/htdocs/simplepie.inc on line 1780 Kod jest zdefiniowany w videos-page.php, który jest pokazany poniżej: // YouTube RSS URL przez FeedBurner: http://feeds .feedburner.com/rocktron require_once(getenv("DOCUMENT_ROOT"). '/simplepie.inc'); $feed = nowy SimplePie(); $feed->set_feed_url(array('http://feeds.feedburner.com/rocktron')); $feed->enable_cache(prawda); $feed->set_cache_location('cache'); $feed->set_cache_duration(1800); $feed->init(); $feed->handle_content_type(); Wszystko działa, pokazana jest strona wideo, odtwarzane są również filmy, ale komunikat ostrzegawczy wyświetlany na górze strony wideo. Każda wskazówka do rozwiązania tej zagadki będzie naprawdę pomocna. Z góry dziękuję


title: Zamienić obudowę audio/wideo na odtwarzacz?

text: Bieżący stan: analizuję źródła danych XML do frontonu i/lub zaplecza (Admin UI), ale nie do bazy danych. Wewnątrz tych kanałów umieszczam treści mp3 i wideo, obecnie tylko jako zwykły tekst (bez linku, bez odtwarzacza). Cel na przyszłość: Chcę zmienić powyższe zachowanie, aby odwiedzający mogli oglądać/słuchać treści wideo/audio. Czego szukam: wbudowane funkcje (wp core), które ładują odtwarzacz (wp core) dla plików audio i/lub wideo w kanale. Czego nie szukam: Wyrażenie regularne/regex zastępujące bieżący tekst (link). Rozwiązanie powinno być niezależne od jakichkolwiek wtyczek, motywów lub innego kodu stron trzecich. Mam nadzieję, że jest tu ktoś, kto ma z tym jakieś doświadczenie. **Edytuj: Zaraz mam pytanie, może łatwiej zrozumiesz mój problem** Czy istnieje sposób na zobaczenie \'załączników\' z kanałów RSS? Chciałbym wykorzystać obrazy jako miniatury i wyświetlić odtwarzacz do obudów wideo i audio. Oto przykładowy element kanału z załącznikiem... <item> <title>Nowe wideo Ferrari FF</title> <link>http://www.evo.co.uk/news/evonews/264793/ferrari_ff_new_pictures_and_video.html< /link> <description>Ferrari wypuszcza nowy, pełen akcji i nie zamaskowany filmik ze swojego supersamochodu FF. Film i nowe zdjęcia tutaj</description> <pubDate>Pt, 25 lutego 2011 15:04:58 +0000</pubDate> <enclosure url="http://www.evo.co.uk/images/front_picture_library_UK/dir_853 /car_photo_426559_23.jpg" length="5420" type="image/jpeg"/> </item>


title: Jak dostosować panel kategorii?

text: ![tutaj wprowadź opis obrazu](http://i.stack.imgur.com/Q5ZZy.jpg) jak dostosować ten ekran ? przykład : dodaj nowy obszar lub usuń sekcję opisu


title: Nie wyświetla się wtyczka paska powiadomień

text: Jestem początkującym użytkownikiem i pobrałem pasek powiadomień i aktywowałem go, ale nie wyświetla się on na stronie internetowej. Nie jestem w stanie pracować w kodzie, ale każda pomoc jest doceniana.


title: Masz problem z ustawieniem/modyfikacją plików cookies

text: Pracuję nad interfejsem administratora dla wtyczki, którą tworzę, i obejmuje zwijalne układy. Chcę, aby stan układu był zapamiętywany podczas odświeżania strony, dlatego staram się użyć do tego prostych plików cookie. W interfejsie znajdują się przyciski „zwiń”, które zwijają sekcje panelu administracyjnego. Po każdym kliknięciu przycisku potrzebuję zestawu plików cookie dla stanu tej sekcji. Jeśli więc sekcja jest zamknięta, należy utworzyć plik cookie, aby to zapamiętać. Następnie, jeśli ten sam przycisk zostanie kliknięty, plik cookie musi zostać zmodyfikowany, aby wskazać, że sekcja została ponownie otwarta. Oto kod, który mam do tej pory, aby ustawić plik cookie na true (lub false) po kliknięciu przycisku: $('.ss-show-collapse').click(function(){ var collapse_anchor = '.'+$( this).attr("id")+'span'; show_collapse = '.ss-show'+$(this).attr("id").replace('ss-show-collapse', ''); $ (show_collapse ).toggleFade('slow'); $(collapse_anchor).toggle(); if (getCookie($(this).attr("id")) == true) { setCookie($(this).attr( "id"), false, 1); } else { setCookie($(this).attr("id"), true, 1); } alert(getCookie($(this).attr("id"))) ; // tylko po to, aby zobaczyć, że plik cookie został zmodyfikowany return false; }); Dobrze jest ustawić plik cookie jako „prawda” za pierwszym razem, ale nigdy nie usunie pliku cookie, jeśli już istnieje.


title: Dołączanie zmiennej do adresu URL linku RSS

text: Mam kanał rss dla mojego bloga demonstracyjnego tutaj. http://clickquickcash.com/feed/?user=john Przekazuje zmienną 'user' 'john' do postów w kanale. Muszę dodać zmienną „użytkownik” do linku. Uwaga - musiałem zastąpić moją domenę poniżej „websiteurl”, ponieważ ta witryna nie pozwoliła mi opublikować więcej niż 1 linku, ponieważ nowy użytkownik websiteurl/this-is-a-test-2/ staje się... websiteurl/this-is -a-test-2/john websiteurl/this-is-a-test-2?user=john Proszę mi powiedzieć, co muszę zmienić w plikach function.php lub feed.php. Dziękuję


title: Czy istnieje filtr dla skryptu wpisywania do kolejki, który usuwa właściwość type="text/javascript"?

text: script type="text/javascript" jest opcjonalny w HTML5 i wszystkie przeglądarki (nawet stare) rozpoznają JavaScript bez niego. Tworzę witrynę HTML5 i chcę, aby mój skrypt był spójny. Jednak skrypty korzystające z funkcji WordPress enqueue są drukowane z typem="text/javascript". CSS jest również drukowany z type="text/css", co również nie jest potrzebne. Nie mogę znaleźć filtra do usunięcia tych właściwości. Czy istnieje?


title: Jak zapobiec ucieczce podczas zapisywania kodu HTML w wartości opcji?

text: Mam stronę Opcje motywu, na której użytkownik może dodać pewne opcje, takie jak linki do Facebooka itp. Jedna z opcji dotyczy kodu reklamy, a po zapisaniu go jako opcji jest on wielokrotnie pomijany. Jakie jest najlepsze podejście do zapisania kodu wstawionego na stronie administratora `<textarea>` za pomocą `update_option( 'sidebar_code', $_POST['sidebar_code'] );` ?


title: Nie można dodawać komentarzy do wątków z powodu niestandardowego pliku comments.php

text:
Hej, próbowałem użyć funkcji komentarzy w wątkach Wordpress, ale nie działało to z powodu niestandardowego motywu. Próbowałem wtyczki komentarzy wp wp, która działa jak urok, ale niestety ma konflikt z wtyczką społeczności FV. Pokazuje przycisk odpowiedzi w obszarze wiadomości społeczności / widżecie. Więc próbowałem to zrobić ręcznie... bez powodzenia. czy ktoś może mi zasugerować lub wskazać mi gdzieś, gdzie mogę uzyskać dane, aby to naprawić. Moja wersja wordpress to 3.0.4 okrzyki Aktualny komentarz . php <?php // Nie usuwaj tych wierszy, jeśli (!empty($_SERVER['SCRIPT_FILENAME']) && 'comments.php' == basename($_SERVER['SCRIPT_FILENAME'])) umiera ('Proszę nie ładować bezpośrednio na tej stronie. Dzięki!'); if (!empty($post->post_password)) { // jeśli istnieje hasło if ($_COOKIE['wp-postpass_' .COOKIEHASH] != $post->post_password) { // i nie pasuje do cookie ?>
Ten post jest chroniony hasłem. Wprowadź hasło, aby wyświetlić komentarze.
 <?php return; } } /* Ta zmienna służy do naprzemiennego tła komentarzy */ $oddcomment = 'alt'; ?> <?php if ( $comments ) : ?>  <?php $urlHome = get_bloginfo('katalog_szablonu'); ?>

Niesamowite komentarze!
 <?php foreach ($comments as $comment) : ?> <?php $comment_type = get_comment_type(); ?> <?php if($comment_type == 'comment') { ?> <div id="comment-<?php comment_ID() ?>" class="fl ar">
< ?php echo get_avatar( $comment, 80, $default = $urlHome . '/images/default_avatar_visitor.gif' ); ?>

<a href="<?php comment_author_url(); ?>" target="_blank" rel="nofollow"><?php comment_author(); ?>

<?php the_time('m.d.y') ?>

 <div class="box2 <?php echo $oddcomment; ?>"> <?php comment_text() ?>

 <?php $oddcomment = (pusty($oddcomment))? 'alt' : ''; ?> <?php } /* Koniec instrukcji is_comment */ ?> <?php endforeach; // koniec dla każdego komentarza ?>

Trackbacks

 <?php //Wyświetla trackbacki tylko dla foreach ($commenty jako $comment) : ?> <?php $comment_type = get_comment_type(); ?> <?php if($comment_type != 'comment') { ?>
<?php link_autora_komentarza() ?>
 <?php } endforeach; ?>

 <?php endif; ?> <?php if ('open' == $post->comment_status) : ?>

Zostaw swoje Odpowiedź
 <?php if ( get_option('comment_registration') && !$user_ID ) : ?>
Musisz być <a href="<?php echo get_option('siteurl'); ?>/wp -login.php?redirect_to=<?php echo urlencode(get_permalink()); ?>">zalogowany, aby dodać komentarz.
 <?php else : ?>
 <?php if ( is_user_logged_in() ) {?>
<img src="<?php bloginfo('template_directory'); ?>/images/default_avatar_visitor.gif" alt="" />
 <? } else { ?>
Twoje imię i nazwisko:

Twój e-mail:

Strona internetowa:

Komentarze:
 <? } ?>

 <form action="<?php echo get_option('siteurl'); ?>/wp-comments-post.php" method="post" id=" commentform"> <fieldset class="message"> <?php if ( $user_ID ) : ?>
Zalogowany jako <a href="<?php echo get_option('siteurl'); ?>/wp-admin /profile.php"><?php echo $identyfikacja_użytkownika; ?>. <a href="<?php echo get_option('siteurl'); ?>/wp-login.php?action=logout" title="Wyloguj się z tego konta">Wyloguj się »
 <?php else : ?>
 <input name="autor" id="autor" type="tekst" value="" />

 <input name="email" id=" e-mail" type="tekst" wartość="" />

 <input nazwa="url" id="url" type="tekst" wartość="" />
 <?php endif; ?>
 <textarea name="comment" id="comment" cols="" rows=""></textarea>

 <input name ="prześlij" id="prześlij" type="obraz" src="<?php bloginfo('katalog_szablonu'); ?>/images/btn-submit.gif" value="Wyślij" class="btn" />

* Imię, e-mail, komentarz są wymagane
 <input type="hidden" name="comment_post_ID" value="<?php echo $id; ?>" / > <?php do_action('formularz_komentarza', $post->ID); ?> </fieldset> </form> <?php endif; // Jeśli wymagana jest rejestracja i nie jesteś zalogowany ?>

  <?php endif; // jeśli to usuniesz, niebo spadnie Ci na głowę ?>


title: Czy liczba pobrań wyświetlana dla wtyczki w katalogu wtyczek WordPress.org obejmuje automatyczne aktualizacje?

text: Zastanawiam się, jak liczba pobrań wyświetlana w katalogu wtyczek koreluje z liczbą rzeczywistych witryn korzystających z wtyczki. Zdaję sobie sprawę, że niektórzy ludzie będą pobierać i nigdy nie instalować, a inni mogą pobierać wiele razy, ale jeśli wtyczka została zaktualizowana 5 razy z pulpitu nawigacyjnego WP, czy te aktualizacje są również uwzględnione w ogólnej liczbie pobierania?


title: Stwórz wtyczkę z formularzem w poście i prześlij ją do odpowiedniego formularza

text: Muszę napisać wtyczkę, która doda formularz na końcu konkretnych postów z przyciskiem przesyłania. To dla mnie jasne. Następnie po kliknięciu prześlij muszę przesłać formularz do własnego formularza z wtyczki i pokazać więcej danych wejściowych dla użytkownika. Po wypełnieniu formularza chcę zapisać dane do db. Wiem, jak to wszystko zrobić, ale jak mogę przesłać formularz zawarty w poście na inny konkretny adres URL? Dzięki za wszystkie rady.


title: Wyświetlasz wpisy blogu na stronie (używając get_posts do pobierania postów)?

text:
Stworzyłem stronę o nazwie **blog.php**, która będzie przechowywać moje wpisy na blogu, wszystkie inne strony mają niestandardowy typ posta o nazwie " **Zawartość strony**" (dla zawartości statycznej). Chciałem zrobić nagłówek na tej stronie bloga, który jest pobierany z głównej pętli bieżącej strony (`the_content`) i użyłem `get_posts` do pobrania wpisów na blogu. Próbowałem zrobić odwrotnie: używając `get_posts` aby uzyskać `the_content` bieżącej strony, ale pobrano `the_content` wpisów na blogu. (i za pomocą pętli głównej do pobierania postów). Czy będę miał problemy z użyciem tej metody? Czy jest na to lepszy sposób? Pożądany wynik: ![wpisz tutaj opis obrazu](http://i.stack.imgur.com/Haj91.png) <?php /** * Nazwa szablonu: Blog * @package WordPress * @subpackage Wybitny * @since Wybitny 1.0 */ get_header(); ?>

 <?php / / Uruchom główną pętlę if ( have_posts() ): ?> <?php while ( have_posts() ): the_post(); ?>

<?php the_content(); ?>

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

 <?php // Utwórz własną pętlę $custom_posts = get_posts( ); // Domyślnie argumenty pobierają posty zaczynające się od najnowszych ?> <?php foreach( $custom_posts as $post ): setup_postdata( $post ); ?>
<?php the_title(); ?>
 <?php the_content(); ?> <?php comments_popup_link( __( 'Zostaw komentarz', 'dwadzieścia' ), __( '1 komentarz', 'dwadzieścia' ), __( '% komentarzy', 'dwadzieścia ') ); ?> <?php endforeach; ?> <?php wp_reset_query(); ?>

 <?php get_footer(); ?>


title: Jak zoptymalizować niestandardową stronę administracyjną typu post z 25 000 postów?

text: Od czasu do czasu otrzymuję błąd nadmiernego limitu zasobów z powodu ładowania tak wielu postów naraz. Ustawiliśmy limit PHP na 128, ale samo załadowanie listy postów dla kilku typów postów zajmuje jeszcze więcej zasobów. Na stronie administratora z 25 000 postów jest 217 zapytań, a na innej stronie administratora z 15 000 postów jest 301 zapytań. Czy istnieje sposób na ich buforowanie, a może inne rozwiązanie umożliwiające bezproblemowe ładowanie tych stron?


title: Docelowe przyciski wp_editor, aby dodać podpowiedź

text:
Mam wieloautorską witrynę internetową i bez względu na to, ile edukacji daję Autorom, ponad 80% odmawia lub zapomina o użyciu nagłówków w swoich postach, zamiast tego używają pogrubionego tekstu w osobnym wierszu, aby wyznaczyć nową sekcję posta . W mojej walce myślę, że powinienem spróbować dodać podpowiedź do **B** w `wp_editor` z notatką, która po prostu opisuje, kiedy używać, a kiedy nie używać **B** i kiedy zamiast tego użyj **Nagłówka**. Nie jestem pewien, czy ma to znaczenie w sposobie kierowania, ale powinienem również zauważyć, że używam `wp_editor` w komentarzach, w sekcji bio profilu użytkownika, a także w niestandardowym polu meta w nowym ekran postu. Mam już notatki dodane do różnych metapól na nowej stronie posta, przy użyciu metod opisanych w - Jak dodawać przypomnienia/notatki do nowych metapól postów Utworzyłem plik `alerts.js` w `/theme_name/js/` i dodałem następujące elementy do mojego `functions.php` //Load jQuery, aby wyświetlić meta-notatki New Post. funkcja load_my_alerts(){ wp_register_script( 'my_alerts', get_template_directory_uri() . '/js/alerts.js', array( 'jquery') ); wp_enqueue_script( 'moje_ostrzeżenia' ); } add_action('admin_enqueue_scripts', 'load_my_alerts'); Pełna zawartość `alerts.js` jQuery(document).ready(function($){ $('
', { id: 'tags-meta-reminder', class: 'meta-box-reminder', html: '
Dodaj od 1 do 5 tagów, aby opisać swój artykuł. Wszelkie tagi poza pierwszymi 5 zostaną automatycznie usunięte. Potrzebujesz pomocy?
' }).appendTo('#tagsdiv-post_tag .howto'); $('
', { id: 'category-meta -reminder', class: 'meta-box-reminder', html: '
 Wybierz tylko 1 kategorię dla swojego artykułu. Jeśli wybierzesz wiele kategorii, zostaną one usunięte, a kategoria wymieniona na pierwszym miejscu alfabetycznie stanie się kategorią dla Twojego artykułu. Potrzebujesz pomocy ?
' }).appendTo('#categorydiv'); $('
', { id: 'polecane-meta-przypomnienia-obrazu', cl ass: 'meta-box-reminder', html: '
Prześlij obraz na co najmniej 640 pikseli szerokości i 360 pikseli wysokości. Potrzebujesz pomocy?
' }).appendTo('#postimagediv'); $('
', { id: 'cite-meta-reminder', class: 'meta-box-reminder', html: '
Wypełnij informacje w tej sekcji, jeśli Twój artykuł bezpośrednio odnosi się do innego artykułu, posta na blogu, wywiadu, segmentu programu telewizyjnego lub radiowego itp. to możliwe, ale nie wszystkie pola są wymagane. Nie wypełniaj tej sekcji, jeśli po prostu odwołujesz się do wyników lub statystyk. Potrzebujesz pomocy?
' }).appendTo('#ecpt_metabox_4'); });


title: category__not_in -- mimo to użyć nazwy kategorii zamiast identyfikatora?

text: Chciałbym wykluczyć kategorie z pętli, używając "name" zamiast "id", ponieważ identyfikator może się zmienić podczas korzystania z nowych baz danych. Nazwa jednak zawsze będzie taka sama. czy to możliwe?


title: Wyłączyć automatyczne usuwanie kosza?

text: Mam klienta, który chce korzystać z funkcji kosza, ale przechowuje tam przedmioty na czas nieokreślony (nie mam pojęcia dlaczego, ale nalegają). Czytając ten artykuł w kodeksie na temat statusu kosza, widzę, że możesz ustawić stałą EMPTY_TRASH_DAYS na zero. Ale mówi, że całkowicie wyłączy to funkcjonalność Kosza. Nie chcę tego robić... Chcę tylko wyłączyć _automatyczne opróżnianie kosza_. Czy jest na to sposób? A może utknąłem z wpisaniem ogromnej liczby dla wartości EMPTY_TRASH_DAYS?


title: Wordpress - zapytaj 5 postów z konkretnym postem na górze

text: Wiele poszukiwań i testów, ale na próżno potrzebuję eksperta, który mnie uratuje. Potrzebuję niestandardowego zapytania o post w worpdress, które zwraca tylko 5 postów, zaczynając od określonego posta. Innymi słowy, istnieje div w single.php, w którym potrzebuję listy 5 postów, zaczynając od bieżącego posta (post zwrócony przez single.php) Mam nadzieję, że byłem jasny dzięki za twoją cenną pomoc.


title: Jak poprawnie utworzyć tabelę we wtyczce

text: Okej = pracowałem nad wtyczką, o której tu napisałem, i mam kilka problemów. Postanowiłem pójść drogą pisania wtyczki od zera. Jak zauważyłem, jest to dostosowana galeria / portfolio ajax, a ja staram się zarządzać jej zarządzaniem w wp-admin. Celem jest w końcu wykonanie zapytania/sortowania za pomocą wp i dostarczenie xml lub json z powrotem do httprequest za pośrednictwem tej wtyczki. Po pierwsze - kiedy wtyczka jest aktywowana po raz pierwszy, próbuję utworzyć nową tabelę i wstawić do niej dane testowe (stosuję się do wytycznych kodeksu wordpress). Jednak po pomyślnej aktywacji wtyczki nic nie jest wydarzenie. Nie otrzymuję żadnych błędów (już), ale tabela nie jest wstawiana i żadne dane nie są dodawane. Zdaję sobie sprawę, że skrypt kodeksu jest proceduralny i używam klasy, ale _Myślę_, że wszystko jest poprawnie określone. Właściwie. Nie wiem, czy tak jest, a konkretnie `global $wpdb`. Nadal jestem całkiem nowy w php - wydaje się, że ma pewne dziwactwa dotyczące zakresu, których jeszcze nie znam. W każdym razie - to mam do tej pory. Bardzo proste, ale nie ma (jeszcze). <?php /* Nazwa wtyczki: B99 Portfolio Plugin URI: http://www.joshbosworth.com/ Opis: B99 Portfolio data logic Wersja: 0.1 Autor: Josh Bosworth URI autora: http://www.joshbosworth.com */ globalna wersja $b99_pf_db_; $b99_pf_db_version = "1.0"; if ( !class_exists( 'B99_Portfolio')){ require_once(ABSPATH . 'wp-admin/includes/upgrade.php'); class B99_Portfolio { funkcja publiczna B99_Portfolio(){} funkcja publiczna __construct(){ add_action('admin_menu', array( &$this, 'b99_portfolio_admin_actions')); } //++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++ // admin //++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++ public function b99_portfolio_admin_actions(){ add_media_page( 'Portfel B99', 'Portfel B99', 'manage_options', 'B99_Portfolio', array( &$this, 'b99_portfolio_admin') ); } public function b99_portfolio_admin(){ if (!current_user_can('manage_options')) { wp_die( __('Nie masz wystarczających uprawnień, aby uzyskać dostęp do tej strony.') ); } include('b99-portfolio-admin.php'); } //++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++ // db tabela //++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++ var $nazwa_tabeli; funkcja publiczna b99_pf_install() { globalna $wpdb; $this->table_name = $wpdb->prefiks . "b99_pf"; $sql = "UTWÓRZ TABELĘ" . $this->nazwa_tabeli . " ( //zmieniono na klasę var id mediumint(9) NOT NULL AUTO_INCREMENT, time datetime DEFAULT '0000-00-00 00:00:00' NOT NULL, tytuł tinytext NOT NULL, cat tinytext DEFAULT NOT NULL, //zmieniono z znacznik 'default' tinytext NIE NULL, tekst notatki NIE NULL, data tinytext NIE NULL, hr_path tinytext NOT NULL, lr_path tinytext NOT NULL, UNIQUE KEY id (id) );"; dbDelta($sql); add_option("b99_pf_db_version", $b99_pf_db_version); } funkcja publiczna b99_pf_install_data(){ global $wpdb; $title = 'Wściekłe testowanie'; $kot = 'ilustracja,projekt'; $tag = 'szkic'; $note = 'Poważnie Testuję'; $data = 'czerwiec 2008'; $hr_path= 'godz/testowanie.wściekle-hr.jpg'; $lr_path= 'lr/testing.wściekle-lr.jpg'; $rows_affected = $wpdb->insert( $this->table_name, array( 'time' => current_time('mysql'), //zmieniono table_name na klasę var 'title' => $title, 'cat' => $ kot, 'tag' => $tag, 'note' => $note, 'hr_path'=>$hr_path, 'lr_path'=>$lr_path ) ); } } //zakończ klasę } if( class_exists(B99_Portfolio)){ $b99_PF = new B99_Portfolio(); register_activation_hook(__FILE__, array(&$b99_PF, 'b99_pf_install')); register_activation_hook(__FILE__, array(&$b99_PF, 'b99_pf_install_data')); } ?> Jakakolwiek rada byłaby doskonała. Szczerze mówiąc - i odmienne lub przeciwne podejście do mojego ogólnego planu tutaj też byłoby w porządku. Z góry dziękuję. przy okazji. Jak do diabła mam debugować wordpress? Używam netbeans / xampp... = update = Ok - udało mi się uruchomić xdebug (dzięki!). Mam jeszcze kilka pytań dotyczących tego kodu. **-Tylko ogólne php** - Jestem trochę zakłopotany zakresem zmiennych $classvar // implikowany modyfikator publiczny? private function someFunction(){ $classvar // wyjaśnię to wprost - to jest nowa lokalna var $classvar !=$this->classvar? // prawo? jeśli tak, to ważne wyjaśnienie... } **-$wpdb** dlaczego global $wpdb $rows_affected = $wpdb->insert(... a nie tylko globalna $wbdb->insert(... **-register_activation_hook / wordpress db rebuild.** Zauważyłem, że hak aktywacji jest uruchamiany za każdym razem, gdy strona administracyjna jest ładowana, a nie tylko wtedy, gdy wtyczka jest „aktywowana”, co wydaje się logicznym zachowaniem.I wygląda na to, że przebudowuje się wp-query, lub przynajmniej uruchamia dbDelta na całej bazie danych wordpress przy każdej przebudowie strony administratora?Nie, że wydaje się to złe, ale nie jestem pewien, czy rozumiem dlaczego.Powinienem zauważyć - używam tylko myPhpAdmin, aby sprawdzić, czy tabela się pobiera dodane do struktury bazy danych. Najwyraźniej spędziłem całą karierę pracując po stronie klienta ;) Chociaż korzystałem z wielu funkcji php w przeszłości, może to być pierwszy raz, kiedy próbowałem czegoś innego niż „prostego” procedury po stronie serwera lub kopiuj/wklej.W każdym razie - dzięki za pomoc -


title: Lista wydarzeń z wieloma datami: Tylko NASTĘPNA data

text: Obecnie pracuję nad stroną http://madstheatre.com, która będzie służyć jako źródło informacji o występach i przesłuchaniach w Madison, WI. Funkcją, która uniemożliwia mi rozpoczęcie „na żywo” z witryną, jest sposób obsługi wydarzeń z wieloma datami. Mam "podłączone" Advanced Custom Fields 4.3.7 autorstwa Elliota Condona i Custom Post Type UI w wersji 0.8.2 autorstwa WebDevStudios.com i chciałbym ograniczyć wtyczki tylko do tych dwóch. Mam wiele ACF dla date_one, date_two, date_three,... do 20 (mało prawdopodobne, że którekolwiek zdarzenie przekroczy 10, ale na wszelki wypadek) i są w formacie PHP Y-m-d. **Cel: wszystkie listy wydarzeń będą ułożone chronologicznie według daty NASTĘPNEGO wydarzenia i będą stanowić tylko jeden wiersz informacji z tylko jedną datą (data NASTĘPNEGO wydarzenia).** Zacząłem od poniższego, aby uzyskać tylko dzisiejsze wydarzenia, ale mogę Wydaje się, że nawet to nie działa i nie porusza kwestii jutrzejszych wydarzeń. <?php query_posts(array( 'meta_query' => array( 'relation' => 'LUB', array( 'key' => 'date_one', 'value' => date( 'R-m-d'), 'porównaj' = > '=', 'type' => 'DATE' ), array( 'key' => 'date_two', 'value' => date( 'Y-m-d' ), 'compare' => '=', 'type' => 'DATE' ), array( ... ), ), 'posts_per_page' => 30, 'post_type' => 'performance' ) ); ?> Ostatecznie mam pomysł awaryjny, który obejmuje tylko daty rozpoczęcia i zakończenia, ale naprawdę mam nadzieję na tę konkretną funkcję.


title: czy istnieje wtyczka jcarousel do wordpress, która ładuje dynamiczne obrazy?

text: Mam klienta, który chce przesłać obrazy do galerii jcarousel, a nie przypisywać ich statycznie przez HTML. czy istnieje taka wtyczka, która pozwoliłaby mi to zrobić?


title: Zastąpienie bieżącego folderu motywu poprzednią wersją tego samego folderu powoduje błąd „niezdefiniowanej funkcji get_header()”

text: Aby sprawdzić poprzednią wersję mojego motywu, tymczasowo przeniosłem folder bieżącego motywu w inne miejsce i umieściłem w jego lokalizacji folder starszej wersji tego samego motywu o tej samej nazwie. Jednak otrzymuję komunikat "Błąd krytyczny: Wywołaj niezdefiniowaną funkcję get_header() w ...\index.php w wierszu 1". Dlaczego, u licha, miałoby się to wydarzyć?


title: Po przesłaniu utworzyć i zmienić rozmiar wielu kopii przesyłanego pliku bez żadnego przycinania?

text: Chciałbym zmienić rozmiar przesyłanych obrazów w innym rozmiarze. Przesyłane mogą być jednak obrazy w orientacji pionowej lub poziomej. Czy istnieje sposób na zduplikowanie przesłanego obrazu i proporcjonalne skalowanie go (z zachowaniem proporcji)? (Nie chcę przycinać obrazu) Przykład: * Obraz pulpitu = przesyłany obraz * Obrazy tabletów = przesyłany obraz * 0,7 (jakość i proporcje muszą być takie same) * Obrazy ze smartfonów = przesyłany obraz * 0,5 (jakość a proporcja musi być taka sama) Pozdrawiam


title: utwórz CPT w większości tylko do odczytu

text: Mam CPT, który pobiera swoje dane z zewnętrznego serwera. Serwer zewnętrzny jest masterem danych, a moja wtyczka przechowuje replikację bez możliwości aktualizacji mastera, dlatego możliwość edycji treści tylko zdezorientuje użytkownika, może nawet sprawić, że pomyśli, że master zostanie zaktualizowany przez edycje . Zasadniczo chciałbym ponownie wykorzystać framework administracyjny CPT, ale pozostawić tylko link do usuwania (może nawet nie), nawet dla administratorów. Prawdopodobnie mogę to zrobić za pomocą CSS, ale szukam innych opcji, które wydają się mniej hackowe. To jest dla estetyki interfejsu, a nie bezpieczeństwa, więc nie obchodzi mnie, że można to obejść.


title: Używanie WP_list_table z search_box działa tylko z ?s=searchterm jako pierwszym argumentem?

text: Używam `WP_list_table` i rozszerzyłem go o search_box, ale zauważyłem, że pole wyszukiwania nie zawsze działa. Jeśli załaduję stronę i wyszukaj, to działa. Ale kiedy ładuję stronę i używam jednej z kolumn tabeli, aby odwoływać się do tabeli, a następnie przeszukuję, to nie działa. Jak mogę to naprawić, aby wyszukiwanie + sortowanie kolumn działało razem?


title: Integracja WP_Query z wieloma polami wyboru

text: Stworzyłem CTP o nazwie voluntary_position_cpt... Stworzyłem również dwie taksonomie dla tego CPT: voluntary_category (tagi) i location_category (tagi) Mój interfejs: [ ] Kategoria 1 [ ] Kategoria 2 [ ] Kategoria 3 [ ] Kategoria 4 [ ] Kategoria 5 [ ] Lokalizacja 1 [ ] Lokalizacja 2 [ ] Lokalizacja 3 [ ] Lokalizacja 4 [ ] Lokalizacja 5 [ Szukaj ] To, co próbuję umożliwić użytkownikowi, to możliwość zaznaczenia 1 lub wielu pól wyboru dla obu kategorii i lokalizację, a następnie za pomocą WP_Query, pobierz pasujące posty ... Obecnie moje zapytanie zwróci wynik, jeśli wybiorę kategorię 1 i lokalizację 1, ale wydaje się również, że zwraca posty, które są częścią lokalizacji 1, ale nie kategorii 1. Muszę mieć możliwość zwrócenia kategorii jako priorytetu, a następnie wszystkich powiązanych lokalizacji. Czy powinienem utworzyć WP_Query, które początkowo pobiera wybrane kategorie, a następnie odfiltrowuje lokalizacje? $args = array( 'post_status' => 'publish', 'post_type' => 'volunteer_position_cpt', 'posts_per_page' => -1, 'orderby' => 'name', 'order' => 'ASC', ' tax_query' => array( 'relation' => 'AND', array( 'taxonomy' => 'volunteer_category', 'field' => 'slug', 'terms' => $categories, 'operator' => 'AND ', 'include_children' => false ), array( 'taxonomy' => 'volunteer_location', 'field' => 'slug', 'terms' => $locations, 'operator' => 'OR', 'include_children' => fałsz )) ); $pozycje = nowe WP_Query($args); wp_send_json ($ pozycje);


title: wpmu_signup_user_notification filtr nie działa

text: Próbuję dostosować e-mail aktywacyjny w WordPressie. Używam WordPress 3.8 Multisite (subdomena). Dodałem następujący kod (z http://daan.kortenba.ch/filter- wpmu_signup_user_notification) do functions.php mojego motywu add_filter( 'wpmu_signup_user_notification', 'dk_wpmu_signup_user_notification', 10, 4 ); /** * Problem: WordPress MultiSite wysyła maile rejestracyjne użytkownika z głównej strony. Jest to problem podczas korzystania z funkcji mapowania domeny, ponieważ nadawca nie jest tą samą domeną, jak oczekiwano podczas tworzenia nowego użytkownika z bloga z inną domeną. * Rozwiązanie: Zmień domyślną pocztę powiadamiania użytkowników z używania głównej sieci admin_email i site_name na blog admin_email & blogname * * @author Daan Kortenbach * @link http://daankortenbach.nl/wordpress/filter-wpmu_signup_user_notification/ */ function dk_wpmu_signup_user_notification ($user, $user_email, $key, $meta = '') { $blog_id = get_current_blog_id(); // Wyślij e-mail z linkiem aktywacyjnym. $admin_email = get_option( 'admin_email' ); if ( $admin_email == '' ) $admin_email = 'support@' . $_SERVER['SERVER_NAME']; $from_name = get_option( 'nazwa_bloga' ) == '' ? 'WordPress' : esc_html( get_option( 'nazwa bloga' ) ); $message_headers = "Od: \"{$from_name}\" <{$admin_email}>\n" . "Content-Type: text/plain; charset=\"" . get_option('blog_charset') . "\"\n"; $message = sprintf( apply_filters( 'wpmu_signup_user_notification_email', __( "Aby aktywować użytkownika, kliknij następujący link:\n\n%s\n\nPo aktywacji otrzymasz *kolejny e-mail* z Twoim loginem.\ n\n" ), $user, $user_email, $key, $meta ), site_url( "wp-activate.php?key=$key" ) ); // DO ZROBIENIA: Nie umieszczaj na stałe linku aktywacyjnego kodu. $subject = sprintf( apply_filters( 'wpmu_signup_user_notification_subject', __( '[%1$s] Aktywuj %2$s' ), $user, $user_email, $key, $meta ), $from_name, $user ); wp_mail ($ użytkownik_email, $ temat, $ wiadomość, $ nagłówki wiadomości); zwróć fałsz; } Jednak nie ma to żadnego wpływu. Do celów testowych wyedytowałem /wp-includes/ms-functions.php i zmieniłem linię 898 na: function wpmu_signup_user_notification( $user, $user_email, $key, $meta = array() ) { echo "core"; umierać; } a następnie filtr functions.php mojego motywu: add_filter( 'wpmu_signup_user_notification', 'dk_wpmu_signup_user_notification', 10, 4 ); function dk_wpmu_signup_user_notification($user, $user_email, $key, $meta = '') { echo "filtr"; umierać; } Następnie zarejestrowałem nowego użytkownika na stronie front-endowej i mówi "core", więc z jakiegoś powodu filtr nie działa.


title: Permalink Wordpress nadal nie działa (błąd lub niezrozumiany?)

text: Po godzinach rozumienia wordpressowych permalinków rozpaczam i mam nadzieję, że ktoś może pomóc. Mam następujący link: www.mysite.com/?page_id=923&bahn=BER Po aktywacji permalinków link staje się do www.mysite.com/data/rink?bahn=BER Jak na razie dobrze. Ale moim celem jest stworzenie takiego linku: www.mysite.com/data/rink/BER Dlatego w moim functions.php umieściłem następujący kod add_filter( 'query_vars', 'add_custom_page_variables' ); funkcja add_custom_page_variables( $public_query_vars ) { $public_query_vars[] = 'bahn'; zwróć $public_query_vars; } add_action( 'init', 'wpa5413_init' ); function wpa5413_init() { add_rewrite_rule( 'data/rink/([^/]+)', 'index.php?pagename=rink&bahn=$matches[1]', 'top' ); globalne $wp_rewrite; $wp_rewrite->flush_rules(); } Przetestowałem tę regułę z wtyczką, która pokazuje, że reguła jest aktywna i powinna być poprawna. Ale to nie działa! Podczas wpisywania adresu URL zawsze "przekierowuje" do: www.mojawitryna.com/data/rink lub www.mojawitryna.com/data/rink?bahn=BER Czy ktoś może wskazać, co jest nie tak z moim kodem?


title: Fancybox właśnie ładuje mały biały kwadrat

text: Próbowałem, co mogłem, ale nie mogę załadować mojego obrazu za pomocą wtyczki fancybox. Wtyczka jest tam i wydaje się ładować, ale bez obrazu. Zamiast tego w lewym górnym rogu ekranu pojawia się mały biały kwadrat. Czytałem, że być może będę musiał umieścić to w moim pliku footer.php, który po sprawdzeniu wydaje się, że tam jest: `<?php wp_footer(); ?>` Czyli inaczej nie wiem gdzie jeszcze sprawdzić. Oto strona/plik, o którym mowa: http://testsite.mattlorenzi.ca/corel-draw-logo-instructions/


title: Ustawianie nowego domyślnego szablonu do tworzenia strony

text: Od razu chciałbym powiedzieć, że jestem nowicjuszem WordPressa, więc bardzo przepraszam, jeśli cię rozwścieczę. Niedawno przejąłem zarządzanie witryną klienta i otrzymałem prośbę o zmianę wstępnie wybranego szablonu „Układ domyślny” na taki, który stworzyliśmy sami. Klient niedawno zatrudnił nowych pracowników do stworzenia dla nich nowej strony, a oni ciągle zapominają o zmianie układu z domyślnego na niestandardowy. Zostałem poproszony o upewnienie się, że nasz szablon jest wybrany podczas ładowania strony, abyśmy mogli zminimalizować bałagan -upy na ich końcu. Spędziłem około 3 godzin na szukaniu rozwiązania, czy ktoś może zaproponować sposób na to lub coś podobnego?


title: Jak wymusić WWW. w domenie z wtyczką WordPress MU Domain Mapping?

text: Utworzyłem wątek (Jak zrobić www. i nie www. Przejdź do tej samej witryny, dla wszystkich witryn?) na forach pomocy dla wtyczki WordPress: WordPress MU Domain Mapping. Wszystko jest w porządku i elegancko. Posiadam domenę podstawową oraz kilka innych domen. Pomyślnie dodałem wszystkie domeny. Jednak uruchamiam `www.domain.com` i `domain.com`, ale są to oddzielne struktury adresów URL. Potrzebuję `domain.com`, aby przekierować do `www.domain.com` dla każdej z mapowanych domen, podobnie jak moja domena podstawowa. Jak mogę uzyskać domeny inne niż www, aby przekierować do domen www dla każdej z moich mapowanych domen?


title: Dostosuj pętlę do tłumaczenia

text: Tworzę niestandardowe rozwiązanie, które byłoby dwujęzyczne w języku angielskim i francuskim. Chcę przechowywać francuską treść, tytuł, ... w niestandardowych metach, dodając META BOXES do ekranu edycji. Ta część jest w porządku, poradzę sobie bez problemu. Teraz mogę wykryć język użytkownika za pomocą `substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);` tutaj też nic wielkiego. Teraz, w zależności od języka użytkownika, chcę, aby pętla serwerowała albo główną zawartość (znasz `the_content()` lub `the_title()`,... ) albo przetłumaczoną wersję przez uruchomienie jakiegoś filtra. Który kod musiałbym kodować we wtyczce lub functions.php ?


title: Jak wyświetlić dane z formularzy grawitacyjnych w moim szablonie?

text: # Przedmowa Zainstalowałem formularze grawitacyjne, stworzyłem formularz i użytkownicy przesyłają dane do mojej strony. To, co chcę zrobić, to pokazać dane, które użytkownicy przesyłają do mojej witryny na jednej z moich stron. Wiem, że istnieje wtyczka Gravity Forms Directory. Ale to daje tylko stałą prezentację danych. # Pytanie **Czy w formach grawitacyjnych jest coś, co może zrobić coś takiego? (pseudo kod)** : <?php gforms_get_field( $form_id, $entry_id, 'user_name_field' ); ?>


title: Nie można dodać multimediów do strony

text: Nie mogę dodać multimediów do strony. Klikam przycisk na stronie edycji strony i nic się nie dzieje. Konsola internetowa programu firefox mówi „TypeError: wp.Uploader is undefined”. Próbowałem już dezaktywować zainstalowane wtyczki i ustawiłem domyślny motyw ("Twenty Fourteen"). Wygooglowałem ten problem i znajduję tylko osoby, które opracowują własne wtyczki, które mają ten problem. :(