Dodanie tłumaczenia do szablonu strony na systemie WordPress

Aby wprowadzić plik z tłumaczeniami w naszym szablonie strony zbudowanej na WordPress powinnismy:

  • stworzyć w katalogu szablonu, katalog languages
  • stworzyć odpowiednie pliki zawierajace tłumaczenia w odpowiednich formatach pl_PL.po i pl_PL.mo najlepiej za pomocą programu PoEdit
  • wprowadzić odpowiedni kod do pliku functions.php
  • wywołujemy użycie tłumaczenia poprzez textdomain i zapis:  _e(„Some text”, 'atcom’)

function nws_setup()
{
load_theme_textdomain('atcom', get_template_directory() . '/languages');
}

add_action('after_setup_theme', 'nws_setup');

Zliczanie tagów

Niektóre portale społecznościowe mają ograniczoną ilość tagów jakie można zamieścić w wpisie, poniższe pole pozwoli ci na zweryfikowanie ile tagów w tekście już użyłeś. Z uwzględnieniem że tagi są oznakowane #.

skróty klawiaturowe na MacOS

  • ⌘ + ⇧ + . (command + shift + kropka) – włącza/wyłącza widok ukrytych folderów/plików
  • ⌘ + ⇧ + 3 (command + shift + 3) – print screen ekranu/ekranów zapisywany zazwyczaj jako .png na pulpicie
  • ⌘ + ⇧ + 4 (command + shift + 4) – zapisywany wycinek ekranu

usunięcie dodanych inline styli w WP 5.9 global-styles-inline-css

w pliku functions.php dodajemy kod:


//Remove Gutenberg Block Library CSS from loading on the frontend
function nws_remove_wp_block_library_css(){
wp_dequeue_style( 'wp-block-library' );
wp_dequeue_style( 'wp-block-library-theme' );
wp_dequeue_style( 'wc-block-style' ); // Remove WooCommerce block CSS
wp_dequeue_style( 'global-styles' ); // Remove theme.json
}
add_action( 'wp_enqueue_scripts', 'nws_remove_wp_block_library_css', 100 );

rozszerzenie dla google fonts o polskie znaki

dodajemy na końcu url =latin-ext


<link href="https://fonts.googleapis.com/css2?family=Libre+Baskerville:wght@400;700&family=Montserrat:wght@200&display=swap=latin-ext" rel="stylesheet">

modyfikacja głównego wp dla konkretnych taxonomi


function nws_adjust_queries($query) {
if ( !is_admin() && is_post_type_archive('oferty') && $query->is_main_query() ) {
$query->set('posts_per_page', '1');
$taxQuery = [
[
'taxonomy' => 'oferty_category',
'field' => 'slug',
'terms' => ['archiwum'],
'operator' => 'NOT IN',
],
];
$query->set('tax_query', $taxQuery);
}
}
add_action('pre_get_posts', 'nws_adjust_queries');

dodanie blokowania skryptów w kodzie php dla plugina Cookie Notice

Plugin Cookie Notice (by Hu-manity.co) pozwala na blokowanie nie funkcjonalnych skryptów do czasu wyrażenia na nie zgody, jak np. skrypty google analytics, w kodzie strony możemy to zrobić wykorzystując funkcję cn_cookies_accepted:

  <?php if (function_exists('cn_cookies_accepted') && cn_cookies_accepted()) { ?>
    <!-- Global site tag (gtag.js) - Google Analytics -->
    <script async src="https://www.googletagmanager.com/gtag/js?...."></script>
    <script>
      ....
    </script>
  <?php } ?>

Ważne by zaznaczyć przy tym opcję Reloading (Przeładowuję) – Enable to reload the page after cookie are accepted. (Włącz aby przeładowywać stronę po akceptacji ciasteczek.)

Pobranie listy kategorii produktów z różnymi parametrami

dokumentacja

zmiana hasła dla admina w bazie danych

nie powinno często sie to zdarzać ale bywa że z jakichś powodów technicznych resetowanie hasła nie jest możliwe, wtedy, jeśli mamy dostęp do bazy danych możemy tego dokonać bezpośrednio w phpMyAdmin. Oto kroki:

  1. logujemy się do phpMyAdmin
  2. z menu paska bocznego wybieramy tablicę prefix_users
  3. wyszukujemy w liście użytkowników tego, któremu edytujemy hasło i klikamy opcję Edit/Edytuj
  4. wprowadzamy nowe hasło w polu user_pass
  5. z paska obok wybieramy kodowanie MD5
  6. zapisujemy zmiany dolnym przyciskiem Wykonaj
  7. logujemy sie do panelu admina wp na nowe wprowadzone hasło

php lista z pętli bez przecinka po ostatnim elemencie

$arr = array(1,2,3,4,5,6,7);
$copy = $arr;
foreach ($arr as $val) {
    echo $val;
    if (next($copy )) {
        echo ','; // Add comma for all elements instead of last
    }
}

zmiana ilości custom postów wyświetlanych na archiwum lub

// change postperpage on custom post
function nws_custom_post_pagesize( $query ) {
    if ( ! is_admin() && is_post_type_archive( 'travel' ) ) {
			$query->set( 'posts_per_page', 5 );
			return;
    }
}
add_action( 'pre_get_posts', 'nws_custom_post_pagesize', 1 );


add_action( 'pre_get_posts', function( $query) {
    if ( !is_admin() && $query->is_tax( 'where' ) ) {
        $query->set( 'posts_per_page', 6 );
				return;
    }

} );

dodanie nr telefonu jako aktywnego linku

Aby nr telefony na stronach był klikalny należy dodać go jako link z atrybutem href zaczynającym się od tel:

<a href="tel:+123456890">1234567890</a>

W html5 nie musimy ograniczać sie tylko do akcji wybrania nr telefonu, mamy dostępne tez:

  • tel: – wykonanie telefonu
  • mailto: – otwiera aplikację do wysyłania maili
  • callto: – połączenie przez Skype
  • sms: – wysyła wiadomość tekstową
  • fax: – wysyła fax

Poniżej kod do wylistowania listy nr telefonów pobranych z repeated fields z plugina ACF WordPressa.
Pole zbiorcze o nazwie z sub-polem o nazwie zamieszczone na stronie front page:

<?php
 $frontPageId = get_option('page_on_front');
 $header_info_tel = get_field('header_info_tel', $frontPageId);
 if($header_info_tel):
   $countIT = count(get_field('header_info_tel', $frontPageId));
   $it = 0; 
   while(has_sub_field('header_info_tel', $frontPageId)):
     $homeTopTel = get_sub_field('header_info_tel_nr', $frontPageId); 
     echo '<a href="tel:+48' . esc_attr(preg_replace('/[^0-9+]/','',$homeTopTel)) . '">';
     echo $homeTopTel;
     echo '</a>';
     echo ($it < count($countIT)) ? " , " : "";
     $it++;
   endwhile;
 endif;
?>

ataki na wp

ciekawe linki do przeczytania:

Free fonts – ładne darmowe czcionki

Żaden dobry projekt nie może się obejść bez dobrze dobranych czcionek. A oto subiektywna lista darmowych fontów, które lubię używać w projektach:

  1. Amagro by Fabio Servolo
  2. Saint George Stencil

Szczerze mogę polecić fonty od pangrampangram. Można wypróbować za darmo a potem wybrać odpowiedni pakiet.