0

STEP 1

We have a table called wp_postmeta with a meta_key being video_url

We have another meta_key value in the same table being _heap_video_embed

We want to copy all the values from the video_url field into the _heap_video_embed value, ensuring that the post_id values still correspond to the correct posts

STEP 2

The values in video_url are all youtube links e.g. http://www.youtube.com/watch?v=ZHIhsLhQ-q8

However, once these have been copied into heap_video_embed we want to change this to use the youtube embed code also replacing everything before the = to //www.youtube.com/embed/

<iframe width="640" height="360" src="VIDEO_URL_HERE" frameborder="0" allowfullscreen></iframe>
1

1 Answer 1

0

Something like this should do the tick

UPDATE table_name SET _heap_video_embed=CONCAT('<iframe width="640" height="360" src="',REPLACE(video_url, 'http://www.youtube.com/watch?v=', 'http://www.youtube.com/embed/'),'" frameborder="0" allowfullscreen></iframe>');

changed

http://www.youtube.com/watch?v=ZHIhsLhQ-q8

into

<iframe width="640" height="360" src=" http://www.youtube.com/embed/ZHIhsLhQ-q8" frameborder="0" allowfullscreen></iframe>

To be honest no idea where the extra space before the http came from and if this is exactly what you wanted or that the url should not have http infront but you should be able to adapt this to your needs.

Sign up to request clarification or add additional context in comments.

2 Comments

Thanks for this, how about if we just want to do that in the video_url values? Without having to use _heap_video_embed
if you mean the complete embed code the same as above but then with _heap_video_embed replaced by video_url and if you mean just replace the url you can do UPDATE table_name SET video_url=REPLACE(video_url, 'youtube.com/watch?v=', 'youtube.com/embed/'); but i would do a test run or something first as it replaces your orignal data with no way back

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.