Ciao a tutti.
Ho uno script:
Codice PHP:
$result = mysql_query("select * FROM wp_postmeta WHERE meta_key ='_aioseop_title' ORDER BY post_id desc limit 5 " );
while ($records = mysql_fetch_assoc($result)) {
echo "<a href=http://nomesito.it/?p=". $records['post_id'] .">". $records['meta_value'] ."</a>";
}
Nel db ho una cosa del genere:
Codice:
CREATE TABLE `wp_postmeta` (
`meta_id` bigint(20) unsigned NOT NULL auto_increment,
`post_id` bigint(20) unsigned NOT NULL default '0',
`meta_key` varchar(255) default NULL,
`meta_value` longtext,
PRIMARY KEY (`meta_id`),
KEY `post_id` (`post_id`),
KEY `meta_key` (`meta_key`)
) ENGINE=MyISAM AUTO_INCREMENT=15782 DEFAULT CHARSET=utf8 ;
INSERT INTO `wp_postmeta` VALUES (1, 5, '_aioseop_title', 'Il contenuto');
INSERT INTO `wp_postmeta` VALUES (4, 7, '_blabla', 'Il contenuto');
Quindi, prelevo tutti i dati contenuti nel meta_value nel caso in cui siano associati al meta_key=_aioseop_title
E fin qui è tutto ok.
Io però vorrei prelevare tutti i dati contenuti nel meta_value (sempre se meta_key=_aioseop_title) che abbiano la parola "testo" (non come prefisso), es:
Codice:
INSERT INTO `wp_postmeta` VALUES (1, 2, '_aioseop_title', 'ciao ciao TESTO ciao ciao');
INSERT INTO `wp_postmeta` VALUES (2, 3, '_aioseop_title', 'ciao ciao VIDEO ciao ciao');
Quindi, seguendo l'esempio, estrapolare solo la prima riga (perchè nel meta_value è contenuta la parola TESTO).
Successivamente, vorrei che al dato stampato venisse tolta la parte in cui c'è scritto "testo".
Esempio:
Estrapolo tutti i dati da meta_value che hanno all'interno la parola TESTO (es. "ciao ciao TESTO ciao ciao").
Ed io vorrei stampare:
Codice HTML:
<a href="http://nomesito.it?p=1">ciao ciao</a>
Dove quindi non viene stampato l'intera frase "ciao ciao TESTO ciao ciao", ma solo "ciao ciao" ovvero la prima parte (quindi bloccare prima della parola TESTO).
Come posso fare?