Risposte nei forum create

Stai visualizzando 15 risposte - dal 1 al 15 (di 15 totali)
  • Chi ha creato la discussione arsm

    (@arsenalemusica)

    gentilmente qualcuno può aiutarmi con questa cosa? nemmeno sul forum ufficiale ricevo risposta…

    Chi ha creato la discussione arsm

    (@arsenalemusica)

    Il problema è proprio l’intercettazione, e le priorità. Perchè ho anche provato quei plugin che assegnano una immagine a scelta se il sistema non la trova nel post, e comunque non riusciva nel suo compito. Ho anche provato i plugin che usano una immagine da url esterno, ma niente.
    Eppure mi sembra così semplice in teoria: ho un key+value, e voglio assegnare quel value come featured-image, dunque si tratta di sovrascriverlo.
    Non so scrivere codice e non saprei come fare, ma la logica sarebbe questa:
    cerca un custom-field dal nome (array: x, y, z) > prendi il suo value > usalo come post_thumbnail > mostralo nella metabox

    Chi ha creato la discussione arsm

    (@arsenalemusica)

    …è un vecchio tema premium acquistato su Envato. Sicuramente dovrò farlo riscrivere, ma per adesso avrei bisogno di questa modifica aggiuntiva.

    Chi ha creato la discussione arsm

    (@arsenalemusica)

    …non si apre la tua immagine, ed il codice non funziona così com’è.
    A suo tempo avevo anche provato il seguente, che includeva un array perchè ho bisogno di aggiungere l’immagine per diversi custom-post-types (company, portfolio, event, etc.) che qui ho chiamato fieldname-one, two, etc.:

    add_filter('get_the_post_thumbnail', function($html) {$post = get_post();
    if (! $post) { return $html; }
    if (! in_array($post->post_type, array('fieldname-one', 'fieldname-two'), true)) { return $html; }
    $newThumbnail = filter_var( get_post_meta($post->ID, 'fieldname-one', 'fieldname-two', true), FILTER_SANITIZE_URL );
    if($newThumbnail) { $html = '<img src="' . esc_url($newThumbnail) . '" alt="" />'; }
    return $html;
    });
    Chi ha creato la discussione arsm

    (@arsenalemusica)

    Ti ringrazio per il test. Ma vedi, il punto è proprio che io devo impostare la featured-image in automatico, estrapolandola dal valore del custom-field (le immagini sono già nel database, quindi non si tratta di un URL esterno).
    Ma è anche vero che, oltre al custom-field, l’URL è indicato nel campo ImageFeatured. Dunque perchè il tema (o WordPress di per sé) non la mostra nella metabox? Per questo ho bisogno di automatizzare la cosa.
    Ma soprattutto perchè ho 12.000 post e non posso certo assegnare la featured-image manualmente. 🙂

    Chi ha creato la discussione arsm

    (@arsenalemusica)

    Credo che dovrebbe essere una cosa possibile a prescindere dal tema che uno abbia.
    Ti faccio un esempio dei codici che ho utilizzato. Riesci a capire dov’è il problema?

    return apply_filters( 'post_thumbnail_html', $html, $post_id, $post_thumbnail_id, $size, $attr );
    function my_filter_the_post_thumbnail( $html, $post_id ) {
        // trova il valore del custom-field
        $custom_url = get_post_meta( $post_id, 'portfolio_image', true );
        // se ha un valore, mostralo
        if ( '' != $custom_url ) {
            return '<img src="' . $custom_url . '" />';
        } 
        // altrimenti, mostra il post thumbnail html originale
        else {
            return $html;
        }
    }
    add_filter( 'post_thumbnail_html', 'my_filter_the_post_thumbnail', 10, 2 );
    Chi ha creato la discussione arsm

    (@arsenalemusica)

    [c’è un problema con WP forum, ho letto la tua risposta per email ma qui non compare]
    Dunque non è il mio tema che manca di qualche funzione, ma proprio WP che non permette notifiche sugli utenti. Le tue informazioni sono molto utili, ti confermo che la prima parte relativa a $status funziona bene. Adesso mi devo studiare la seconda parte, ed eventualmente pubblicherò qui la soluzione.

    Chi ha creato la discussione arsm

    (@arsenalemusica)

    Nel ringraziarti per il suggerimento, mi sembra che la funzione wp_delete_user faccia quello che già fa il mio tema, ovvero permette di riassegnare il contenuto di uno User ad Admin, nel momento che quest’ultimo cancella lo User dal backend.
    Il plugin che avevo già notato, sembra invece permettere allo user di cancellare il suo account, cancellando completamente anche il suo contenuto.
    Io avrei bisogno di una via intermedia: permettere all’utente, questo si, di cancellare il suo account dal frontend, ma passare la gestione dello stesso ad Admin. Praticamente mi serve un wp_delete_user che lavori dal frontend ma metta tutto il contenuto di quell’account in stand-by per Admin. L’utente può anche credere che i suoi dati siano eliminati, ma devono essere messi “in attesa di conferma” da Admin.

    Chi ha creato la discussione arsm

    (@arsenalemusica)

    questo post non è “risolto”

    Chi ha creato la discussione arsm

    (@arsenalemusica)

    no, il suggerimento di Thomas non sembra funzionare….

    Chi ha creato la discussione arsm

    (@arsenalemusica)

    Grazie per la info. Sto utilizzando una funzione per far comparire le notification bubbles nel menu admin:

    function show_pending_bubble_number($menu) {    
        $types = array("post", "page", "claim_listing", "company", "portfolio", "events", "deals", "blog");
        $status = "draft";
        foreach($types as $type) {
            $num_posts = wp_count_posts($type, 'readable');
            $pending_count = 0;
            if (!empty($num_posts->$status)) $pending_count = $num_posts->$status;
    
            if ($type == 'post') {
                $menu_str = 'edit.php';
            } else {
                $menu_str = 'edit.php?post_type=' . $type;
            }
    
            foreach( $menu as $menu_key => $menu_data ) {
                if( $menu_str != $menu_data[2] )
                    continue;
                $menu[$menu_key][0] .= " <span class='update-plugins count-$pending_count'><span class='plugin-count'>" . number_format_i18n($pending_count) . '</span></span>';
                }
            }
        return $menu;
    }
    add_filter('add_menu_classes', 'show_pending_bubble_number');

    Praticamente, vorrei che le notifiche $types mi arrivino non solo ogni volta che viene creato un CPT (post, portfolio, etc.) ma anche ogni volta che un nuovo utente si registra.
    E poi ho bisogno che, dei suddetti, il sistema mi avverta non solo per uno $status in draft, ma anche in pending/published.
    Mi sembra che il tuo suggerimento vada nella giusta direzione. Adesso lo provo ed eventualmente chiudo questo thread.

    Chi ha creato la discussione arsm

    (@arsenalemusica)

    nessuno conosce una soluzione o si è mai imbattuto nello stesso problema?
    Devo eliminare il box perchè ha un colore di background, e se comunque non contiene testo il box rimane. Per questo devo far interpretare a .po una stringa vuota.

    Chi ha creato la discussione arsm

    (@arsenalemusica)

    di preciso voglio solo ottenere che il backend inserisca l’immagine presa dal custom-field nella metabox Featured-Image. Ciò vale solo per i custom-post-types del mio tema, mentre non è necessario per post normali, e per questo avevo pensato di dover inserire i nomi degli stessi in un array.
    ACf non possi inserirlo perchè mi aveva già dato problemi.
    Ma segno tutte le preziose info che mi dai e le passerò ad uno sviluppatore. Per me è troppo complesso. 🙂

    Chi ha creato la discussione arsm

    (@arsenalemusica)

    hai ragione sul fatto che richiede un file nella media library, ed infatti io voglio usare una url esterna (hotlinking che è autorizzato dall’utente). Probabilmente inserirò anche la possibilità di caricare i loro files, ma nel caso scegliessero l’hotlinking il sistema deve appunto includermi l’url in automatico nella featured-image. Quindi va bene l’idea di controllare se ci sia o meno un custom-field col key=portfolio-image. Ma forse, correggimi se sbaglio, quel key ci sarà sempre mentre è il value che sarà diverso (url esterno o interno)… in tal caso mi sembra che il tuo codice lo faccia. (ripeto, non sono uno sviluppatore ma cerco di leggere per capire… se avessi letto più attentamente avrei scoperto quella parentesi mancante).
    Due cose a proposito del codice:
    1) il sito ora non è blank, quindi presumo non ci siano conflitti di PHP, però non vedo il campo featured-image compilato. Forse mi aspettavo troppo ed il tuo codice non fa questo ma aggiunge una nuova tab “carica da url” alla pagina “scegli immagine” (che per altro si apre non più come popup ma come nuova pagina). Quindi si tratta sempre di un inserimento manuale, mentre io ho bisogno di un inserimento automatico on the fly.
    2) dato che utilizerei array(‘post-type-one’, ‘post-type-two’), come si include l’array nella riga successiva get_post_meta($post->ID, ‘portfolio_image’, true) per altri xxx_image, yyy_image ?

    Ti ringrazio per la pazienza, sto imparando :S

    Chi ha creato la discussione arsm

    (@arsenalemusica)

    grazie per l’interessamento… preso così com’è il codice non funziona, manda il sito in blank. Sul forum inglese mi suggeriscono un’altra strada più diretta utilizzando set_post_thumbnail(). Ma come ho detto non saprei scrivere in PHP…

Stai visualizzando 15 risposte - dal 1 al 15 (di 15 totali)