Weitere Informationen und den Download findest du auf der offiziellen Anlaufstelle de.wordpress.org
Ergebnis 1 bis 6 von 6

Thema: codeproblem

  1. #1
    PostRank: 10 Avatar von gericoach
    Registriert seit
    12.08.2008
    Beiträge
    7.183

    codeproblem

    Habe ein Immo-plugin in verwendung in dem wir vor Jahren eine sonderoption istalliert haben, die ich nun erweitern möchte. leider kriege ich es nicht hin.
    Es gibt den Hauptordner auf dem Server in den alle Objekte übertragen werden von Flowfact. Dann gibt es einen extraordner "vip" in den wiederum ausgewählte objekte gesendet werden, die nicht im Standard ordner erscheinen. Nun möchte ich noch einen "ref" ordner für Referenzen "füttern". Dazu muss die functions.php erweitert werden. Klappt leider nicht so, wie ich es mir vorgestellt habe.
    Habe im ersten die Filterfunction geklont und statt "vip" "ref" eingesetzt. Dann die add action funktion ebenfalls geklont (kopiert und drunter gesetzt) und umgeschrieben auf "ref".Hat jemand einen Ansatz, wie es korrekt wäre?
    Hier ist das Original:
    PHP-Code:
    <?php

    add_filter
    'immomakler_object_terms_status'"custom_immomakler_status"20);
    function 
    custom_immomakler_status$object_status$openimmo_data$immobilie ) {
        
    preg_match_all('/\/(vip)\//'$openimmo_data['file_import_filename'], $matches);
        if ( isset(
    $matches[1][0]) && $matches[1][0] == 'vip') {
            
    $object_status[] = 'VIP';
        }
        return 
    $object_status;
    }

    add_action'pre_get_posts''immomakler_remove_vip_from_query'999 );
    function 
    immomakler_remove_vip_from_query$query ) {
       if ( 
    $query->get('post_type') == 'immomakler_object' && !is_admin() && $query->get('status') != 'vip' ) {
           
    $tax_query $query->get'tax_query' );
           if (!
    is_array($tax_query)){
               
    $tax_query = array(
                   
    'relation' => 'AND'
               
    );
           }
           
    array_push$tax_query,
               array(
                   
    'taxonomy' => 'immomakler_object_status',
                   
    'field' => 'slug',
                   
    'terms' => array( 'vip' ),
                   
    'operator' => 'NOT IN'
               
    )
           );
           
    $query->set'tax_query'$tax_query );
       }
    }

     
    ?>
    Die Schnittstelle ist openimmo.
    Geändert von gericoach (12.08.2017 um 09:00 Uhr)


  2. #2
    PostRank: 10 Avatar von b3317133
    Registriert seit
    21.11.2014
    Beiträge
    1.980
    Was bedeutet "klappt nicht so wie vorgestellt"?

    Der erste Teil des o.g. Codes schaut im importierten Dateinamen nach, ob dort "vip" vorkommt, und setzt dann ggf. den Status des Objekts auf VIP.

    Der zweite Teil des o.g. Codes blendet Objekte mit diesem VIP Status in den regulären Abfragen von WordPress aus.

  3. #3
    PostRank: 10 Avatar von gericoach
    Registriert seit
    12.08.2008
    Beiträge
    7.183
    klappt nicht bezieht sich auf meine Erweiterung für "ref", soll heissen, das, was ich beschrieben hatte. vip im Original funktioniert prächtig. Meine Erweiterung (siehe Beschreibung) klappte nicht. Hast du nen Ansatz, wie ich es umschreiben muss?

  4. #4
    PostRank: 10 Avatar von b3317133
    Registriert seit
    21.11.2014
    Beiträge
    1.980
    Da nirgends steht, was genau nicht klappt, ist Hilfe schwer/unmöglich. Was der gepostete Code macht, steht oben beschrieben. Mit dem Import von Ordnern hat der Code nichts zu tun.

  5. #5
    PostRank: 10 Avatar von gericoach
    Registriert seit
    12.08.2008
    Beiträge
    7.183
    Das Problem ist, dass ich nicht weiss, wie ich den Code ändern muss, dass auch "ref" als eigene Seite akzeptiert wird. Wenn Du es nicht weisst, ist das doch ok. Warum schreibst Du dann?

  6. #6
    PostRank: 10 Avatar von b3317133
    Registriert seit
    21.11.2014
    Beiträge
    1.980
    Ich weiss, was der o.g. Code macht.

    Wenn er vollständig ist und mit "vip" prächtig funktioniert, muss er mit "ref" auch prächtig funktionieren (ob er das könnte, kann man leider nicht nachvollziehen, weil Du weder Deinen geänderten Code postest noch mitteilst, was damit nicht funktioniert).

    Oder aber es ist gar nicht der vollständige Code, der für diese Sonderoption verantwortlich ist. Darauf könnte man kommen, wenn man den Code bzw. die Antwort von jemandem liest, der netterweise erklärt, was genau diese Code-Teile machen.

    Viel Erfolg bei der Lösung.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •