Ondersteuning » Code oplossingen gezocht » Functies deactiveren in child theme

  • Het Theme van Bootjesgek.nl is verouderd. De vormgeving is nog steeds okee, maar we kunnen niet meer updaten zonder een reeks foutmeldingen; het thema bevat verouderde functies. Ik heb gekozen voor het bewerken van Magazine Basic door middel van een Child Theme en dat lukt aardig maar er zijn een aantal regels in de functions.php van het Parent Theme die ik zou willen deactiveren in het Child Theme en dat wil maar niet lukken. De vraag is dus: wat moet ik in functions.php van het Child Theme opnemen om te zorgen dat onderstaande regels buiten werking worden gesteld? Het gaat (voorlopig) goed als ik in de Parent Theme de volgende regels van ‘comment’ voorzie: //459 t.e.m. //530:

    add_filter( 'excerpt_more', 'mb_excerpt' );
    if ( ! function_exists( 'mb_excerpt' ) ) :
    /**
     * Adds a read more link to all excerpts
     *
     * This function is attached to the 'excerpt_more' filter hook.
     *
     * @param	int $more
     *
     * @return	Custom excerpt ending
     *
     * @since 3.0.0
     */
    function mb_excerpt( $more ) {
    	return '…';
    }
    endif; // mb_excerpt
    
    add_filter( 'wp_trim_excerpt', 'mb_excerpt_more' );
    if ( ! function_exists( 'mb_excerpt_more' ) ) :
    /**
     * Adds a read more link to all excerpts
     *
     * This function is attached to the 'wp_trim_excerpt' filter hook.
     *
     * @param	string $text
     *
     * @return	Custom read more link
     *
     * @since 3.0.0
     */
    function mb_excerpt_more( $text ) {
    	return $text . '<p class="more-link-p"><a href="' . get_permalink( get_the_ID() ) . '">' . __( 'Read more →', 'magazine-basic' ) . '</a></p>';
    }
    endif; // mb_excerpt_more
    
    add_filter( 'the_content_more_link', 'mb_content_more_link', 10, 2 );
    if ( ! function_exists( 'mb_content_more_link' ) ) :
    /**
     * Customize read more link for content
     *
     * This function is attached to the 'the_content_more_link' filter hook.
     *
     * @param	string $link
     * @param	string $text
     *
     * @return	Custom read more link
     *
     * @since 3.0.0
     */
    function mb_content_more_link( $link, $text ) {
    	return '<p class="more-link-p"><a href="' . get_permalink( get_the_ID() ) . '">' . $text . '</a></p>';
    }
    endif; // mb_content_more_link
    
    add_filter( 'excerpt_length', 'mb_excerpt_length', 999 );
    if ( ! function_exists( 'mb_excerpt_length' ) ) :
    /**
     * Custom excerpt length
     *
     * This function is attached to the 'excerpt_length' filter hook.
     *
     * @param	int $length
     *
     * @return	Custom excerpt length
     *
     * @since 3.0.0
     */
    function mb_excerpt_length( $length ) {
    	return 40;
    }
    endif; // mb_excerpt_length

4 reacties aan het bekijken - 1 tot 4 (van in totaal 4)
  • Heb je dit al geprobeerd:

    1. kopieer ‘functions.php’ van de parent, >> naar de map van het CHILD
    2. BEWERK nu ‘functions.php’ van het CHILD en sla de wijzigingen op
    3. ververs de browser: <CTRL-F5> en bekijk ’t resultaat

    Aangenomen dat de gewijzigde php-code ‘deugt’, moet de nieuwe situatie nu werken.

    NB! Wijzigingen in de parent gaan verloren bij updates en upgrades… Child-theme is dus een goed idee 😉

    Thread starter Bootjesgek HK

    (@hankooiman)

    Ja, dat heb ik al geprobeerd en ik heb op die manier al functies toegevoegd aan Magazine Basic. Nu ben ik op het punt dat ik een aantal functies uit de parent zou willen schrappen. Het thema neemt bijvoorbeeld nogal veel ruimte, bijvoorbeeld voor de Readmore link. Ik wil dat graag veel compacter zoals je kunt zien bij Bootjesgek.nl.
    Als ik ga zoeken in de WordPress Codex, de Forums en met Google, vind ik allerlei aanwijzingen over remove function, unhook, unregister, add filter, add action, child overwrite, remove action en meer. Heb ik allemaal geprobeerd op de manier die je beschrijft maar zonder resultaat.
    Dan las ik ook nog: de child.php wordt geladen vóór de parent.php dus alles wat ik in de child doe wordt weer herroepen door de parent? Daarom zou er ook moeten worden toegevoegd: after_setup_theme. Je ziet, ik heb mijn best gedaan maar dit php coderen gaat me net iets te ver boven de pet. Ik zou geholpen zijn als iemand op basis van bovenstaande code een paar regels zou willen schrijven die ik in de funtions.php zou kunnen opnemen en zo deze klus klaren! Alvast bedankt!

    Het thema neemt bijvoorbeeld nogal veel ruimte, bijvoorbeeld voor de Readmore link. Ik wil dat graag veel compacter

    ?Ligt het niet veel meer voor de hand om dat mbv CSS op te lossen??
    Bijv. door er een div omheen te zetten en die mbv css naar je hand te zetten??

    Als je functies wilt verwijderen, kan je ze toch tussen /*..*/ zetten of wissen?

    Thread starter Bootjesgek HK

    (@hankooiman)

    Ik ben op zoek naar een elegante en duurzame oplossing in de vorm van php code in de functions.php van de child en daarom heb ik deze vraag ook in dit forum ‘code-oplossingen’ geplaatst!
    Een snelle ‘work-around’ is inderdaad display:none van de p waarin die Readmore is ingepakt maar erg elegant is dat niet. Bovendien wil ik ook graag een correctie van de ingrepen die aan de excerpt zijn gedaan en wil ik graag terug naar de default waarden.
    Om verder te weken aan de child op mijn testversie (op localhome) heb ik inderdaad de bedoelde code voorlopig in //comment mode gezet maar dat zou natuurlijk pas werken tot de eerstvolgende update van het parent theme van Magazine Basic. Dus als iemand een stuk code zou kunnen en willen schrijven om mij zo zo een elegante en duurzame oplossing aan de hand te doen? Bootjesgek.nl

4 reacties aan het bekijken - 1 tot 4 (van in totaal 4)
  • Het onderwerp ‘Functies deactiveren in child theme’ is gesloten voor nieuwe reacties.