• Bannato User Attivo

    Related posts difficoltà

    Ho installato realted posts, ho seguito le sitruzioni (per quello che sono riuscito a capire dall'inglese), e dopo aver installato il tutto ho la sensazione che non funzioni in quanto il plugin non riesce a collegarsi al db o quantomeno non è riuscito a creare la tabella nel db.
    Questo è quanto mi esce sotto all'articolo una volta installato l'istruzione specifica:


    WordPress database error: [Can't find FULLTEXT index matching the column list]
    SELECT ID, post_title, post_content,MATCH (post_name, post_content) AGAINST ('pizza margherita') AS score FROM wp_posts WHERE MATCH (post_name, post_content) AGAINST ('pizza margherita') AND post_date <= '2007-01-28 11:23:38' AND (post_status IN ( 'publish', 'static' ) && ID != '51') AND post_password ='' ORDER BY score DESC LIMIT 4


    Vado alla linea 18 del file related.psots.php è trovo la corrispondenza a questa istruzione


    require_once(dirname(FILE).'/../../' .'wp-config.php');


    quindi da qui ho la sensazione di cui sopra

    Ho installato, per esempio , due istruzioni diverse nel file index.php, la prima

    <?php related_posts(); ?>

    ma dato che avuto la sensazione che per la versione dopo la 2.0 (io uso la 2.0.6) l'istruzione da inserire è questa

    <?php related_posts($limit, $len, '$before_title', '$after_title', '$before_post', '$after_post', $show_pass_post, $show_excerpt); ?>

    ma l'errore di cui sopra è cmq presente.
    Ho capito che forse devo creare io a manina la tabella nel db, ma sapete comè non vorrei fare qualche casino, mi date una mano?
    Ciao


  • Super User

    guarda nel menu admin, sotto plugins c'è una tab related posts.

    ora devi cliccare sull'ultimo link o bottone per creare le tabelle in automatico.


  • User Attivo

    Comunque quel plugin non necessita di CREARE tabelle, ciò che devi fare è aggiungere un indice FULLTEXT alle tabelle wp_posts.name e wp_posts.content.

    Come dice gh3, lo puoi fare direttamente dal pannello admin di wordpress, una volta installato il plugin.


  • Bannato User Attivo

    @gh3 said:

    guarda nel menu admin, sotto plugins c'è una tab related posts.

    ora devi cliccare sull'ultimo link o bottone per creare le tabelle in automatico.
    Se intendi di cliccare su quanto qui vien fuori qui?

    SQL Index Table Setup

    If this is your first time installing this plugin you will have to run this script (opens a new window) in order to create the index table required by the plugin. If this fails, please refer to the readme on how to create it manually.

    Mi vien fuori questo errore:

    Fatal error: main(): Failed opening required '/home/httpd/vhosts/blog.positanonelweb.net/httpdocs/wp-content/plugins/2.0.4/../../wp-config.php' (include_path='.:/usr/share/php:/usr/share/pear') in /home/httpd/vhosts/blog.positanonelweb.net/httpdocs/wp-content/plugins/2.0.4/related-posts.php on line 18

    Magari provo a fare anche quanto detto da petro.
    Ciao
    p.s.
    sarò diventato tondo e non vedo quanto indicatomi?Boh!!


  • Bannato User Attivo

    @petro said:

    Comunque quel plugin non necessita di CREARE tabelle, ciò che devi fare è aggiungere un indice FULLTEXT alle tabelle wp_posts.name e wp_posts.content.

    Come dice gh3, lo puoi fare direttamente dal pannello admin di wordpress, una volta installato il plugin.

    Qunid in questo caso dovrei andare nella gestione del db con phpmyadmin, cliccare su "wp_posts", poi andare sul campo "post_content" e successivamente "post_name" e con con il tasto modifica aggiungere cosa?

    Oppure devo andare in "esegui la query SQL sul db ...... " e aggiungere i campi "post_name" e "post_content" e dopo averli evidenziati e trasportati a sx do il comando esegui?

    Ciao


  • User Attivo

    Se usi phpmyadmin, vai in struttura della tabella wp_posts, e clicca il pulsante per "Crea un indice su 2 columns".

    Lì devi dare un nome all'indice (fai un po' te), selezionare il tipo fulltext e selezionare le due colonne post_title e post_content. Se ti da errore, probabilmente devi cambiare il tipo di storage engine, vai nella scheda SQL e lancia la query: ALTER TABLE wp_posts ENGINE = MYISAM;


  • Bannato User Attivo

    @Fra_T said:

    Se usi phpmyadmin, vai in struttura della tabella wp_posts, e clicca il pulsante per "Crea un indice su 2 columns".

    Lì devi dare un nome all'indice (fai un po' te), selezionare il tipo fulltext e selezionare le due colonne post_title e post_content. Se ti da errore, probabilmente devi cambiare il tipo di storage engine, vai nella scheda SQL e lancia la query: ALTER TABLE wp_posts ENGINE = MYISAM;
    Ti ringrazio per la spiegazione, ma non è che sia un espertone della materia, il mio terrore di craere qualche casino è grande, attualmente nella voce indice c'è già di default "crea un indice su 1 colonna" - quindi dovrei cambiare questo e portarlo a "2" poi do "l'esegui" - dare il nome all'indice è importante? dare un nome qualsiasi fa niente? Poi tu dici selezionare il tipo fulltext cosa? Devo evidenziare "post_title e post_content" nei "campi" e dare l'esegui? Oddio sto andando in panico!!!
    Ciao


  • User Attivo

    @positano said:

    Ti ringrazio per la spiegazione, ma non è che sia un espertone della materia, il mio terrore di craere qualche casino è grande, attualmente nella voce indice c'è già di default "crea un indice su 1 colonna" - quindi dovrei cambiare questo e portarlo a "2" poi do "l'esegui" - dare il nome all'indice è importante? dare un nome qualsiasi fa niente? Poi tu dici selezionare il tipo fulltext cosa? Devo evidenziare "post_title e post_content" nei "campi" e dare l'esegui? Oddio sto andando in panico!!!
    Ciao

    sì, il nome non importa, basta che non ce ne sia uno uguale nella stessa tabella.

    giusto anche la selezione, è importante l'ordine (credo).

    Per il Fulltext, dovrebbe esserci il menu "Tipo di indice : " a discesa, li selezioni l'opzione fulltext, poi prendi nota dell'errore che ti da (se te lo da)..

    Nel mio caso, il messaggio sarebbe: #1214 - The used table type doesn't support FULLTEXT indexes

    Se volessi usare questo plugin, dovrei lanciare la query: ALTER TABLE wp_posts ENGINE = MYISAM; per cambiare il tipo di tabella.


  • Bannato User Attivo

    @Fra_T said:

    sì, il nome non importa, basta che non ce ne sia uno uguale nella stessa tabella.

    giusto anche la selezione, è importante l'ordine (credo).

    Per il Fulltext, dovrebbe esserci il menu "Tipo di indice : " a discesa, li selezioni l'opzione fulltext, poi prendi nota dell'errore che ti da (se te lo da)..

    Nel mio caso, il messaggio sarebbe: #1214 - The used table type doesn't support FULLTEXT indexes

    Se volessi usare questo plugin, dovrei lanciare la query: ALTER TABLE wp_posts ENGINE = MYISAM; per cambiare il tipo di tabella.
    Dunque ho creato, con un patè d'animo non indifferente, le due tabelle e mi sono venute fuori (nel db) i relativi articoli senza alcun errore, infatti una volta dato l'ok dell'esegui sono giutno alla pagina (sempre nel db) wp_posts con i record creati, pensando di aver concluso l'operazione ho fatto ovvero inserito l'istruzione all'interno della inde.php ma ancora mi viene fuori:


    WordPress database error: [Can't find FULLTEXT index matching the column list]
    SELECT ID, post_title, post_content,MATCH (post_name, post_content) AGAINST ('vico equense') AS score FROM wp_posts WHERE MATCH (post_name, post_content) AGAINST ('vico equense') AND post_date <= '2007-01-29 12:46:45' AND (post_status IN ( 'publish', 'static' ) && ID != '52') AND post_password ='' ORDER BY score DESC LIMIT 4


    mi sembra di aver capito adesso che il problema sussiste solo nel full text, ma dove cavolo sta sto full text da inserire che non lo vedo da nessuna parte?
    Ciao
    p.s.
    Mi sembra di aver fatto un errore non ho creato i due indici è importante?


  • User Attivo

    Strano, il "FULLTEXT index" dovresti averlo appena creato con l'istruzione che ti ho dato...

    Nella struttura della tabella wp_posts, ci dovrebbe essere una tabella 'indici' con le intestazioni "Nome chiave - Tipo - Cardinalità - Azione - Campo". In quella tabella è contenuta una riga con il valore di "campo" = a post_title, post_content e Tipo = 'FULLTEXT'?


  • Bannato User Attivo

    @Fra_T said:

    Strano, il "FULLTEXT index" dovresti averlo appena creato con l'istruzione che ti ho dato...

    Nella struttura della tabella wp_posts, ci dovrebbe essere una tabella 'indici' con le intestazioni "Nome chiave - Tipo - Cardinalità - Azione - Campo". In quella tabella è contenuta una riga con il valore di "campo" = a post_title, post_content e Tipo = 'FULLTEXT'?
    A posto ero io a fare un casino su alcune cose, anzichè creare le tabelle nella parte indici, andava ad eseguire i comandi della creazione degli indici, ma se quest'ultimi non era stati prima creati come facevano ad essere collocati? Quindi ho fatto la procedura passo passo, primo ho creato gli indici e lì ho trovato il famoso fulltext, gli indici erano due sulla stessa tabella, poi ho creato gli indici dei vari articoli già inseriti e tutto è andato bene, l'unica cosa che ho notato è che all'indice tocca dargli il nome consigliato dall'autore( non ho provato se senza non funzionasse ma va bene così).
    Ciao e grazieeeeeeeeee