Beiträge von mensmaximus


    Ich hänge mal meinen gegenwärtigen Code an, vielleicht kann mir ja jemand weiterhelfen.

    Ich wiederhole


    Ohne tiefer in die Plugins und das Vorhaben einzusteigen kann man da aber nicht wirklich helfen.

    Du sprichst nur von "Daten" und "Informationen" die in ein PDF geschrieben werden sollen. Der abenteuerlich anmutende Quellcode lässt zwar in etwa erahnen wo Du hin willst aber eben nicht mehr. Um zu helfen braucht man Fakten. So wie der Code aussieht hat sich aber nicht wirklich jemand Gedanken darüber gemacht wie das Ziel erreicht werden soll, woher die Daten kommen und welches Konstrukt dafür am besten geeignet ist.


    Bei einem Blog mit integriertem Shop macht es durchaus Sinn nicht alles über HTTPS laufen zu lassen. Das sollte man an der Performance schon deutlich merken.

    Das ist nicht richtig. Aus heutiger Sicht sollte keine Webseite mehr ohne SSL laufen und die Performance macht keinen Unterschied. Nur die "Zeit bis zum erste Byte" ist langsamer und das sollte bei einem guten Hoster kein Problem sein. Der Mischbetrieb von HTTP und HTTPS führt früher oder später immer zu Problemen und sollte unter allen Umständen vermieden werden - sonst sehen wir uns hier bald wieder mit der Frage "Seit Umstellung auf HTTPS geht das nicht und jenes auch nicht mehr" ;-)

    Und weil die Frage ja öfters kommt habe ich schon mal ein Dropplet geschrieben. Wenn es die Zeit erlaubt mache ich noch ein Plugin.

    Mit folgendem Code wir bei Variablen Produkten auf dem "Allgemein Tab" eine neue Checkbox angezeigt. Aktiviert man diese RCO (Remove Check Option) Checkbox, wird in den Selektorboxen aller Variationen dieses Produktes der Text "Wählen Sie eine Ausführung" entfernt.

    Der gesamte Code kommt in die functions.php eines Child Themes.

    Bitte keine Supportanfragen per PM! Wer etwas wissen will erstellt einen neuen Thread im Forum "Onlineshop mit WordPress" unter Bezug auf diesen Post.

    Wer den Auswahltext generell ausblenden will, bleibt einfach bei der Ursprungslösung:

    Code
    add_filter( 'woocommerce_dropdown_variation_attribute_options_args', 'mmx_remove_select_text');
    function mmx_remove_select_text( $args ){
        $args['show_option_none'] = '';
        return $args; 
    [COLOR=#333333]}
    [/COLOR]

    Korrektur, der neue Filter kann auch individual auf eine Auswahl von Produkten angewendet werden. Um den Text nur bei den Produkten 46 und 716 zu entfernen folgenden Code verwenden:


    Code
    add_filter( 'woocommerce_dropdown_variation_attribute_options_args', 'mmx_remove_select_text');
    function mmx_remove_select_text( $args ){
    	$product_ids = array( 46, 716);
    	if ( in_array( $args['product']->id, $product_ids ) ) {
    		$args['show_option_none'] = '';
    	}
    	return $args;
    }

    Da Du schon zum zweiten mal anfragst und Dir die Version über die variable.php wohl nicht gefällt, habe ich mal im Quellcode von WooCommerce nachgesehen. Und siehe da, es geht. Aber nur für alle oder keine Box:

    Code
    add_filter( 'woocommerce_dropdown_variation_attribute_options_args', 'mmx_remove_select_text');
    function mmx_remove_select_text( $args ){
        $args['show_option_none'] = '';
        return $args;
    }

    Code für meine Funktion, die den PDF Generator mit bestimmten Werten aufrufen soll.

    Code
    add_action( 'woocommerce_order_status_pending_to_processing_notification', 'generate_tickets_pdf()' );
        add_action( 'woocommerce_order_status_failed_to_processing_notification',  array( $this, 'trigger' ) );

    Beide Aufrufe sind falsch.

    Zeile 1:
    generate_tickets_pdf() ist kein gültiger Funktionsaufruf. Die () sind in jedem Fall falsch und da die Funktion aus einem anderen Plugin stammt muss der Bezug dazu hergestellt werden. Entweder mit dem Constructor Klassenname::Funktion oder wie oft bei WordPress mit einer globalen Variable.

    Zeile 2:
    Da es sich nicht um eine PHP Klasse handelt ist der Aufruf mit $this nicht möglich.

    Ohne tiefer in die Plugins und das Vorhaben einzusteigen kann man da aber nicht wirklich helfen.

    1. Das Plugin ist Selbstmord! (hatten wir doch gerade erst vor ein paar Tagen) Jetzt kann jeder Hacker PHP Code in Deine Datenbank einbinden und ausführen. Es hat einen Grund warum WordPress vor langer Zeit diese "Feature" entfernt hat.

    2. Die Ausgabe wie in der Dokumentation beschrieben ist für einen Shortcode ungeeignet, weil es zu unvorhersehbaren Problemen kommen kann. Ein Shortcode soll niemals selbst eine Ausgabe machen. Details darfst Du Dir gerne anlesen: https://codex.wordpress.org/Shortcode_API

    Ein Blick in den Quellcode des Plugins zeigt, was die Dokumentation verschweigt. Es gibt einen weiteren Parameter der die Ausgabe unterdrückt. Deswegen stellt man Fragen immer zuerst an den Entwickler, weil er das weis.

    Der richtige Weg ist also einen eignen Shortcode zu erstellen:

    Ausgabe der 10 am höchsten bewerteten Beiträge: [mmx_list_ratings limit=10 list=high type=post]

    ** Code ungetestet und rein nach Quellcode des Plugins geschrieben **