sjiamnocna

Přehled odpovědí

Aktuálně je na stránce zobrazeno 20 příspěvků - 61. až 80. (z celkem 877)
  • Autor
    Příspěvky
  • odpověď na téma: Přidání vlastní třídy komentáře #26508

    sjiamnocna
    Participant
    Web

    Léta praxe bych tomu neříkal, ale dejme tomu, že už mám drobnou představu, jak to asi funguje.. :)
    Neco jsem našel tady:
    http://kapler.cz/wordpress-filtry-a-akce-pro-zacatecniky/
    a tady:
    http://wordpress-sensei.cz/filtry-a-akce/

    odpověď na téma: Problém při přihlášení #26481

    sjiamnocna
    Participant
    Web

    Mohu poprosit o adresu webu, abychom to mohli případně vidět?

    http://codex.wordpress.org/Login_Trouble
    Zkuste zavřít záložku s vaším webem a vyčistit prohlížeč (CTRL + SHIFT + DELETE), od všeho (mimo hesla – ty si klidně nechte uložená) a potom přejděte na svou stránku a zkuste se přihlásit.

    Jinak něco podobného jsem našel na oficiálním WP foru (AJ):
    https://wordpress.org/support/topic/admin-login-problem-12

    To bylo bohužel složitější – webhosting kvůli hackerům přidal bezpečnostní opatření a museli to řešit napsáním správcům hostingu

    odpověď na téma: Přidání vlastní třídy komentáře #26480

    sjiamnocna
    Participant
    Web

    Wordpress pouze nadefinoval funkci comment_class, která vypíše všechny třídy, které se různými aplikovanými filtry dostanou do pole tříd (je jedno s jakým indexem, proto se používá $classes[] = '' pro přidání), potom vezme pole tříd, spojí je mezerou a vloží do HTML prvku.

    Filtry fungují tak, že si jednotlivé funkce vzájemně předávají upravenou hodnotu pole, tedy:

    nejprve přeskočím na apply_filters – tato “funkce” je použita až po definici všech filtrů, ale je klíčová – tady se pouze zavolají a spustí všechny filtry. Do prvního filtru se vloží $hodnota ze zadání, tedy 123, a dalšími parametry, ovlivňujícími práci filtru 999 a text ‘aligator’:
    apply_filters('abc', $hodnota = 123, $dalsipromenna = 999, $adalsipromenna = 'aligator');

    muj_filtr_a($hodnota, $dalsipromenna, $adalsipromenna){
    //dělej něco s hodnotou
    if ($adalsipromenna == 'aligator') $hodnota = $hodnota / $dalsipromenna;
    //vrátíme hodnotu vydělenou číslem 999, tedy 123/999
    return $hodnota; //0,123123123123
    }
    /*identifikator filtru je 'abc' tak tedy pokud zadáme 'abc', provede se
    'muj_filtr_a' je název funkce. Klidně tam může být metoda ze třídy (OOP),
    tedy místo 'muj_filtr_a' bude array('nazevtridy','nazevmetody')
    na třetím místě je důležitost. Čím je číslo vyšší, tím později se funkce v řadě spustí - pokud chcete např. vymazat celý obsah, dejte nějaké vysoké číslo, jinak vám tam naskáčou další úpravy. Poslední je počet parametrů, které je funkce schopna přijmout - tedy pokud tam nebude nic, funkce dostane zadánu pouze proměnnou $hodnota, pokud tam jsou 3, dostane všechny 3, tedy
    $hodnota, $dalsipromenna, $adalsipromenna
    */
    add_filter('abc','muj_filtr_a',5,3);
    
    /*další filtr dostane do par. $hodnota upravenou hodnotu z filtru a, parametry $druhahodnota, $tretihodnota dostane stejné jako předchozí hodnoty $dalsipromenna, $adalsipromenna, protože tyto se nemění, jen přidávají další pokyny*/
    function muj_filtr_b($hodnota, $druhahodnota, $tretihodnota){
    //dělej něco s hodnotou
    if ($tretihodnota == 'aligator') $hodnota = $hodnota / $tretihodnota;
    //vrátíme hodnotu vydělenou číslem 999, tedy 0,123123123123/999
    return $hodnota; //0,000123246369492
    }
    add_filter('abc','muj_filtr_b',9,3);

    Takto si mezi sebou předává pole $tridy třeba 20, 30 funkcí:

    1. fce - přidá třídu 'a', do prázdného pole array{}
    2. fce - přidá třídu 'b' do pole, které již obsahuje jednu hodnotu 'a'
    3. fce - prohledá pole $tridy a vymaže záznam, který obsahuje 'a'
    4. fce - dostává pole, obsahující jen 'b'. Když zjistí, že třída 'a' v poli není, přidá třídu 'c'
    5. dejme tomu, že poslední funkce (nechce se mi psát :) ) projede celé pole a ke každé třídě přidá koncovku, třeba '-z', a je jí jedno, že tím zkazí celý vzhled webu :)

    Tedy na konci si apply_filters zavolá všechny funkce postupně, a prvnímu zadá hodnotu (prázdné pole):

    $tridy = apply_filters('comment_class',array());
    /*aby se nerozpadl design pouze se třídami 'b' a 'c', přidáme třídu 'comment', tu ovlivnit - odebrat ani změnit koncovkou nemůžeme, protože se přidá až po všech filtrech*/
    $tridy[] = 'comment';
    $tridy = implode(' ',$tridy);
    
    echo "<div class="$tridy"></div>

    Na konci získá (podle rozpisu fcí 1-5 a nakonec přidání ‘comment’) obsahový DIV komentáře třídy ‘b’, ‘c’ a ‘comment’, které spojí mezerou a vloží do DIV

    ______

    Filtr pouze zařídí to, že proměnnou, kterou předchozí funkce “vyplivne” (return $hodnota;), dostane další funkce, která ji dále zpracovává.

    Mělo by teď být jasné, jak se tam dostávají ty původní třídy –
    1. z jádra WordPressu, které přidává možnosti pro webdesignery
    2. z nejrůznějších pluginů, které je mohou používat třeba pro JavaScriptové úpravy ap.

    :)

    odpověď na téma: Přidání vlastní třídy komentáře #26474

    sjiamnocna
    Participant
    Web

    Pole je proměnná, která obsahuje více oddělených hodnot, které můžeme najít pod tzv. Indexy – $pole[1], $pole[14], atd.

    Třídy proto, aby se mohly měnit filtrem, umístí se do takovéto proměnné. Nakonec se všechny spojí a tvoří HTML atribut class.

    Aby mohly jednotlivé funkce přidávat / odebírat třídy, jak se programátorovi zachce, musí si tyto třídy – tedy celou proměnnou (pole) – mezi sebou předávat. To dělají tak, že přijmou toto pole jako parametr funkce, udělají s ním, co potřebují, a vyplivnou výsledek, který si do parametrů dá další funkce. Nakonec si je všechny vyzbírá HTML atribut class a všechny jje vypíše ;-)

    Vím, zní to jako válečná románová tetralogie, ale zhruba tak nějak to funguje :-)

    odpověď na téma: Přidání vlastní třídy komentáře #26472

    sjiamnocna
    Participant
    Web

    Ahoj
    No, předpokládám, že je to filtr, přidaný přes add_filter()?

    V tom případě musí funkce nejdříve přijmout staré pole s třídami, přidat jednu navíc a teprve potom vrátit pole s přidanou třídou, čili tak nějak;

    <?php
    function my_comment_classes( $puvodni, $class, $comment_id ){
     $puvodni[] = 'mojetrida';
     return $puvodni;
    }
    add_filter('comment_class', 'my_comment_classes',10,3);
    ?>

    Pokud jsem to odhadl špatně prosím napiš znovu sem do topicu

    odpověď na téma: WordPress 4.4.2 – šablona kindergarten #26469

    sjiamnocna
    Participant
    Web

    Nemáte tam nějaký Cache plugin, který by změny mohl zachytávat? Pokud ne, zkuste si zavřít stránku, vymazat mezipaměť prohlížeče – CTRL + SHIFT + DELETE (popř. nastavení -> vymazat mezipaměť) a potom tu stránku opět otevřít

    odpověď na téma: Apply filters vrací prázdnou hodnotu #26467

    sjiamnocna
    Participant
    Web

    No a chyba je na světě, a jako vždy mezi židlí a klávesnicí.

    Mám tam v jiném souboru nastavenou hlášku o updatu verze pluginu a zapomněl jsem v ní na takovou drobnost; Na return :)

    BTW: Ještě dotaz, jak mohu porovnat uložené verze (>, <, =) u string jako třeba ‘2.0.1.4932’? Mám to explodovat tečkou, pak intval a teprv porovnávat, nebo je lepší technika? Odstranit tečky str_replace a pak převést na číslo?

    Děkuji za trpělivost, snad už se někdy poučím ;)

    function wpsb_version() {
            if (WPSB_VERSION == $this->option('version'))
                add_filter('wpsb_notice', function($m) {
                    $m[] = $this->option('old');
                    return $m;
                });
            else{
                add_filter('wpsb_notice', function($m) {
                    $m[] = sprintf(__('Now you successfully upgraded your WordPress Songbook plugin from your old version %1$s to the newest %2$s. Be happy for you can now enjoy all new features of this version! :)', WPSB_LANGDOM), $this->option('old'), WPSB_VERSION );
                    return $m;
                });
                $this->option('old', 'save', $this->option('version'));
                $this->option('version', 'save', WPSB_VERSION);
            }
                
        }

    Díky :)

    odpověď na téma: Apply filters vrací prázdnou hodnotu #26460

    sjiamnocna
    Participant
    Web

    Omlouvám se, ze zoufalství jsem sáhnul pro zálohu dřívější verze a nenapadlo mně, že nemůžu zkopírovat pouze část souboru :)

    Každopádně – výsledek je stejný – “NULL” v hlavičce admina (tam kde mají být zprávy)..

    Upravený soubor přikládám v *.txt (novější – č. 2)
    Výsledek je vidět v přiloženém obrázku (oba stejné ;) )

    odpověď na téma: 3 obrázky vedle sebe v záhlaví #26449

    sjiamnocna
    Participant
    Web

    Šablona TW14 neobsahuje prostor pro 3 obrázky. Nejjednodušší pro vás bude vložit tři obrázky do jednoho obrázku.

    Jiné řešení mně nenapadá, resp. bylo by dost drsné.. :)

    odpověď na téma: Vytvorenie "domáceho" servera pre WordPress #26448

    sjiamnocna
    Participant
    Web

    Na Winech jsem servery nedělal ale hádám, že po instalaci virtuálu by mělo všechno pokračovat, jako všude jinde? Nejjednodušší mi přijde použít místo filezilla server tzv. WAMP

    Dál se asi musí zapojit někdo jiný :)

    odpověď na téma: výpis příspěvku pouze z jedné rubriky #26427

    sjiamnocna
    Participant
    Web

    Jednu dobu jsem úspěšně používal toto:
    Recent posts widget extended

    odpověď na téma: Plugin pro automatické odkazy v textu #26426

    sjiamnocna
    Participant
    Web

    Hledal jsem:
    Keyword to URL
    SEO automatic links

    no a pro reklamní odkazy;
    Easy text links

    ____________

    P.S.: Netestováno (ani na dětech, ani na zvířatech) :)

    odpověď na téma: Fancybox – Featured image #26423

    sjiamnocna
    Participant
    Web

    Jde o to, že po kliknutí na fotku chcete, aby se otevřela větší ve Fancyboxu (popř. jiném lightboxu)?

    Problém asi bude, že by bylo potřeba odkázat náhledový obrázek na originální obrázek, protože tyto lightbox pluginy zpracovávají všechny odkazy, kde v adrese je jpg,png,jpeg apod. Vzhledem k tomu, že je tam nějaká podivná funkce layers_post_featured_media ( asi ji všichni znají, jen já to v životě neviděl :) ) tak nemám tušení, jak to provést. No jádro problému jsem asi našel? ;)

    odpověď na téma: Překlady pluginů Glotpress – jak to funguje? #26414

    sjiamnocna
    Participant
    Web

    Super. Hledal jsem to v “Translators handbook”, no tam zejména k importu a uploadu vůbec nic inteligentního není, až jsi poslal ten odkaz :D

    Tzn. mám plugin WordPress Songbook v adresáři wp-content/plugins/wp-songbook/, takže Textdomain musím taky mít wp-songbook?

    odpověď na téma: Překlady pluginů Glotpress – jak to funguje? #26412

    sjiamnocna
    Participant
    Web

    Díky :)
    Takže se to plánuje, a zatím nemusím nic řešit?
    Slug (zkrácená URL) znamená co? Název adresáře pluginu?

    Jak to bude fungovat? Budou se při každém použití pluginu stahovat fráze z WP.org, nebo to automaticky vytvoří z databáze .MO soubor a vloží jej do wordpressu?

    odpověď na téma: Jak do html kódu banneru vložit odkaz #26373

    sjiamnocna
    Participant
    Web

    Tak bych obalil celý blok, rozhodující o umístění obrázku odkazem
    <a href="http://sbl.sokrates.cz/"></a> tzn. nějak takto:

    <a href="http://sbl.sokrates.cz/">
    <?php if(lang(‚pripona‘)==‘-es‘){ ?>
    <img src=“<?php echo get_template_directory_uri(); ?>/images/facebook-esp.png“ alt=““ class=“fcb“>
    <?php }elseif(lang(‚pripona‘)==‘-en‘){ ?>
    <img src=“<?php echo get_template_directory_uri(); ?>/images/facebook-eng.png“ alt=““ class=“fcb“>
    <?php }else{ ?>
    <img src=“<?php echo get_template_directory_uri(); ?>/images/facebookpr.png“ alt=““ class=“fcb“>
    <?php } ?>
    </a>
    odpověď na téma: Jak do html kódu banneru vložit odkaz #26372

    sjiamnocna
    Participant
    Web

    No, bylo by lepší to publikovat přímo, ne přes přílohy – obzvláště pak ne DOC :)

    Pro všechny je tu obsah přílohy:

    adresa banneru: http://www.prigo.cz/wp-content/themes/prigo-g/images/facebookpr.png

    `<?php if(lang(‘pripona’)==’-es’){ ?>
    <img src=”<?php echo get_template_directory_uri(); ?>/images/facebook-esp.png” alt=”” class=”fcb”>
    <?php }elseif(lang(‘pripona’)==’-en’){ ?>
    <img src=”<?php echo get_template_directory_uri(); ?>/images/facebook-eng.png” alt=”” class=”fcb”>
    <?php }else{ ?>
    <img src=”<?php echo get_template_directory_uri(); ?>/images/facebookpr.png” alt=”” class=”fcb”>
    <?php } ?>
    <a href=”<?php echo get_page_link(’40’); ?>” target=”_self”>
    <img src=”<?php echo get_template_directory_uri(); ?>/images/linka<?php echo lang(‘pripona’); ?>.png” class=”infolinka” alt=””>
    </a>`

    P.S.: Word dělá z kódu humus… Říká se, že humus je úrodný, ale v tomto případě to neplatí

    odpověď na téma: Výpis dané kategorie v šabloně stánky #26343

    sjiamnocna
    Participant
    Web

    Tak můžete použít query_posts, před smyčkou obsahu:

    <?php
    query_posts('cat=hotely&orderby=date&order=ASC');
    
    if(have_posts()) while(have_posts()): the_post(); ?>
    <div id=“post-<?php the_ID(); ?>“ <?php post_class(); ?>>
    <div class=“page-content“>
    <?php the_content(); ?>
    </div>
    </div>
    <?php endwhile; ?>
    odpověď na téma: Výpis dané kategorie v šabloně stánky #26335

    sjiamnocna
    Participant
    Web

    Pardon, možná jsem teď navečer úplně blbý, ale můžete mi vysvětlit, co se tam vlastně má stát? Nějak jsem to z toho kódu nepochytil :)

    Jde o to, že chcete vypsat na hlavní stránce příspěvky jen z dané kategorie? Nebo chcete u příspěvku vždy jen jednu kategorii?

    odpověď na téma: Kde naleznu robots.txt? #26332

    sjiamnocna
    Participant
    Web

    Roboots.txt by se měl nacházet v kořenovém adresáři webu. Pokud tam není, je dobré jej vytvořit

Aktuálně je na stránce zobrazeno 20 příspěvků - 61. až 80. (z celkem 877)

WordPress – novinky, návody a zajímavosti