Categorieën
SQL WordPress

WordPress meta veld met URL zonder http://

Afgelopen maanden ben ik een aantal keer WordPress websites tegen gekomen met berichten waarbij in een meta veld een URL naar een externe website werd opgeslagen. In veel gevallen was deze URL echter niet voorzien van het http:// protocol prefix. Dit resulteerde aan de voorkant van de website in onjuiste URL’s.

Als binnen een WordPress bericht in een meta veld ‘website’ alleen ‘www.domeinnaam.tld’ stond resulteerde dit in de volgende link: http://website.tld/2012/08/wordpress-bericht/www.domeinnaam.tld/, terwijl dit eigenlijk: http://www.domeinnaam.tld/ had moeten zijn. Dit probleem is echter eenvoudig op te lossen met een database query.

Met behulp van de volgende query zijn URL’s zonder de http:// protocol prefix op te vragen:

SELECT
	*
FROM
	wp_postmeta 
WHERE
	meta_key = 'website'
		AND
	meta_value != ''
		AND
	meta_value NOT LIKE 'http%'

Als de ouput van deze query correct is dan kan met behulp van de volgende query de URL’s uitgebreid worden met het http:// protocol.

UPDATE 
	wp_postmeta 
SET 
	meta_value = CONCAT('http://', meta_value)
WHERE
	meta_key = 'website'
		AND
	meta_value != ''
		AND
	meta_value NOT LIKE 'http%'
;

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *