[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f3HDaOe-oS53RTSfurV4YxUqdStvMFvpUy4ow6XE47Eo":3},{"slug":4,"display_name":4,"profile_url":5,"plugin_count":6,"total_installs":7,"avg_security_score":8,"avg_patch_time_days":9,"trust_score":10,"computed_at":11,"plugins":12},"kentfarst","https:\u002F\u002Fprofiles.wordpress.org\u002Fkentfarst\u002F",1,200,85,30,84,"2026-05-19T21:40:10.428Z",[13],{"slug":14,"name":15,"version":16,"author":4,"author_profile":5,"description":17,"short_description":18,"active_installs":7,"downloaded":19,"rating":20,"num_ratings":21,"last_updated":22,"tested_up_to":23,"requires_at_least":24,"requires_php":25,"tags":26,"homepage":32,"download_link":33,"security_score":8,"vuln_count":34,"unpatched_count":34,"last_vuln_date":35,"fetched_at":36},"wp-theater","WP Theater","1.2.3","\u003Cp>WP Theater provides shortcodes for integrating \u003Cstrong>YouTube\u003C\u002Fstrong> and \u003Cstrong>Vimeo\u003C\u002Fstrong> video embeds and feeds into your posts or widgets. Some options include traditional embedding, single video previews, a wrapped “Theater” embed, and video listings from playlists, channels, albums and groups.  WP Theater was built with developers in mind, those who need flexibility. With that said, great effort was put into making sure this plugin stayed simple.\u003C\u002Fp>\n\u003Ch4>Requirements\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Current version tested on WordPress version 3.9 and later.\u003C\u002Fli>\n\u003Cli>PHP 5.3 or later with cURL\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Usage\u003C\u002Fh4>\n\u003Cp>For parameters and their usage please visit:\u003C\u002Fp>\n\u003Cp>http:\u002F\u002Fredshiftstudio.com\u002Fwp-theater\u002F\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Boring Embed\u003C\u002Fstrong> – The classic\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C!--YouTube Error: bad URL entered-->\n\u003C!-- vimeo error: not a vimeo video -->\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Preview\u003C\u002Fstrong> – Thumbnail and title of a single video\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C!--YouTube Error: bad URL entered-->\n\u003C!-- vimeo error: not a vimeo video -->\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Theater\u003C\u002Fstrong> – Traditional embed that’s wrapped for styling, has optional Lower Lights and Full Window buttons, and is responsive.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C!--YouTube Error: bad URL entered-->\n\u003C!-- vimeo error: not a vimeo video -->\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cem>The following contain a “theater” by default\u003C\u002Fem>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>User\u003C\u002Fstrong> – Listing of a user’s videos\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C!--YouTube Error: bad URL entered-->\n\u003C!-- vimeo error: not a vimeo video -->\n\u002F\u002F for YouTube's v3 API see FAQ about user uploads vs playlists.\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Channel\u003C\u002Fstrong> – Listing of videos from a specific channel\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C!-- vimeo error: not a vimeo video -->\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Playlist\u003C\u002Fstrong> – Listing of videos from a user’s playlist\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C!--YouTube Error: bad URL entered-->\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Album\u003C\u002Fstrong> – Listing of videos from a specific album\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C!-- vimeo error: not a vimeo video -->\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Group\u003C\u002Fstrong> – Listing of videos from a specific group\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003C!-- vimeo error: not a vimeo video -->\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3>Developer FAQ\u003C\u002Fh3>\n\u003Ch4>How can I customize the output\u003C\u002Fh4>\n\u003Cp>Filters exist that can handle complete customization of the output.  Written as “Filter_Hook” ($callback_params … )\u003C\u002Fp>\n\u003Cp>Display — Override built in output\u003C\u002Fp>\n\u003Cul>\n\u003Cli>“wp_theater-pre_video_shortcode” ( FALSE, $feed, $atts )\u003C\u002Fli>\n\u003Cli>“wp_theater-pre_theater” ( FALSE, $atts, $content, $tag )\u003C\u002Fli>\n\u003Cli>“wp_theater-pre_video_preview” ( FALSE, $video, $atts, $selected )\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Attributes\u003C\u002Fp>\n\u003Cul>\n\u003Cli>“wp_theater-format_params” ( $atts, $content, $tag )\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>API Feeds — Override built in api request and parsing.  NOTE: Keep in mind that these filters will only be called when the transient cache is updated.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>“wp_theater-pre_get_request_url” ( FALSE, $atts, $request, $output )\u003C\u002Fli>\n\u003Cli>“wp_theater-parse_{$service}_response” ( $out, $response, $atts) \u002F\u002F v1.1.3\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Content\u003C\u002Fp>\n\u003Cul>\n\u003Cli>“wp_theater-section_title” ( $title )\u003C\u002Fli>\n\u003Cli>“wp_theater-video_title” ( $title )\u003C\u002Fli>\n\u003Cli>“wp_theater-{$service}_more_url” ( FALSE, $atts, $data ) \u002F\u002F v1.1.4\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Presets\u003C\u002Fp>\n\u003Cul>\n\u003Cli>“wp_theater-get_preset” ( $name )\u003C\u002Fli>\n\u003Cli>“wp_theater-set_preset” ( $arr, $name )\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>How do I add my own preset?\u003C\u002Fh4>\n\u003Cp>The following code will create a preset named “my_preset”.  We do not currently, but are planning to, offer a method of saving presets to the database so that they stick around between theme’s.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>function my_preset_init ($presets) {\n    $presets->set_preset( 'my_preset', shortcode_atts( $presets->get_preset( 'youtube' ), array(\n        'embed_width' => 342,\n        'embed_height' => 192,\n        'max' => 9,\n    ) ) );\n    add_shortcode( 'my_preset', array( WP_Theater::$shortcodes, 'video_shortcode' ) );\n}\nadd_action('wp_theater-shortcodes_init', 'my_preset_init');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>What values can I define in presets\u003C\u002Fh4>\n\u003Cp>Listed below are all of the possible settings you can define in a preset with their base values\u003C\u002Fp>\n\u003Cpre>\u003Ccode>array(\n    \u002F\u002F general options\n    'preset' => '',\n    'service' => '',\n    'mode' => 'embed',\n    'id' => '',\n    'embed_width' => FALSE,\n    'embed_height' => FALSE,\n    'class' => '',\n    'cache' => FALSE,\n\n    \u002F\u002F preview & listing options\n    'img_size' => 'medium',\n    'columns' => 3,\n    'max' => 12,\n    'autoplay_onclick' => TRUE,\n\n    \u002F\u002F Title options\n    'show_title' => TRUE,\n    'show_video_title' => TRUE,\n    'title' => '',\n\n    \u002F\u002F More link options\n    'show_more_link' => TRUE,\n    'more_url' => FALSE,\n    'more_text' => FALSE,\n\n    \u002F\u002F Theater options\n    'show_theater' => TRUE,\n    'theater_id' => FALSE,\n    'show_fullwindow' => FALSE,\n    'show_lowerlights' => FALSE,\n    'keep_ratio' => TRUE,\n    'iframe_placeholder' = > TRUE            \u002F\u002F since 1.2.0\n\n    \u002F\u002F can only be defined in presets\n    'modes' => array(), \u002F\u002F the modes array with matching link formats\n    'classes' => array( \u002F\u002F the classes to apply to their respective elements\n        'section' => 'entry-section wp-theater-section %service%',\n        'theater' => 'wp-theater-bigscreen',\n        'embed' => 'wp-theater-iframe',\n        'list' => 'wp-theater-listing',\n        'preview' => 'video-preview'\n    )\n);\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>How can I modify the embed url?\u003C\u002Fh4>\n\u003Cp>Each preset requires a modes array to store the different link formats used.  You can directly access and modify these yourself through a theme’s functions.php.\u003Cbr \u002F>\ne.g.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002F\u002F make youtube embed with https and youtube-nocookie.com\nfunction my_preset_init ($presets) {\n    $youtube_preset = $presets->get_preset( 'youtube' );\n    $youtube_preset['modes']['embed'] = 'https:\u002F\u002Fwww.youtube-nocookie.com\u002Fembed\u002F%id%?wmode=transparent&autohide=1';\n    $presets->set_preset( 'youtube', $youtube_preset );\n}\nadd_action('wp_theater-shortcodes_init', 'my_preset_init');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>NOTE:  Each mode URL must have %id% in the place of the id.  And, it’s a bit dumb but, for now you must include at least one query parameter in an embed’s url.\u003C\u002Fp>\n\u003Ch4>What do the formatted feeds look like?\u003C\u002Fh4>\n\u003Cp>Vimeo’s feed will return exactly what their API states except we merge their info and video requests into one and clone values to help normalize the feeds.  Youtube on the other hand is almost completely reformatted into a format based on Vimeo’s\u003C\u002Fp>\n\u003Cp>You can count on the full feeds returning the following content with an exception being that single preview feeds do not have the feed title or url.\u003C\u002Fp>\n\u003Cp>Also, with YouTube’s v3 API enabled, rating, likeCount and viewCount will always be empty strings since you must use OAuth2 and be a verified content owner:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>object\n    'title' => string\n    'url' => string\n    'videos' => array\n        0 => object\n            'title' => string\n            'id' => string\n            'url' => string\n            'upload_date' => string\n            'description' => string\n            'category' => string\n            'duration' => string\n            'rating' => string\n            'likeCount' => string\n            'viewCount' => string\n            'width' => string\n            'height' => string\n            'thumbnails' => array\n                'small' => string\n                'medium' => string\n                'large' => string\n                'cover' => string       \u002F\u002F since 1.2.0 -- set to the largest available image.\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Shortcodes for YouTube and Vimeo. Includes embeds, \"Theater\" embed, thumbed previews, playlist, channel, user uploads and groups.",14191,92,5,"2015-04-26T16:18:00.000Z","4.2.39","3.6","",[27,28,29,30,31],"embed","shortcode","video","vimeo-shortcode","youtube-shortcode","http:\u002F\u002Fredshiftstudio.com\u002Fwp-theater\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-theater.1.2.3.zip",0,null,"2026-04-16T10:56:18.058Z"]