Kimili Flash Embed
Kimili Flash Embed is a plugin for popular open source blogging systems that allows you to easily place Flash movies on your site. Built upon the SWFObject javascript code, it is standards compliant, search engine friendly, highly flexible and full featured, as well as easy to use.
Page Contents
- What Systems Does It Work With?
- What’s New
- Basic Usage
- Tag Generator
- Available Attributes
- Defining Alternate Content for a Flash Movie
- Using Flash Player Express Install
- Configuration Options
- Backwards Compatibility Gotchas
- FAQs
- License
- Support
- Donate
- Version History
What Systems Does It Work With?
Kimili Flash Embed comes in 2 flavors:
What’s New
Current Version: 2.3.1 2.0.1 for Textpattern
Release Date: April 15, 2013
Kimili Flash Embed 2.1.x expands the features that are available in 2.0, including more configuration options and some minor bug fixes. It also takes advantage of the capabilities of SWFObject 2.2 and integrate more tightly into both the Wordpress and Textpattern platforms.
As of the 2.0 version, Kimili Flash Embed includes a the KFE Tag Generator, which makes it much easier to author valid KFE tags. To round out the new features, it is now much easier to specify alternate content for a Flash movie and there are also configuration options which allow you to set defaults for the Tag Generator and modify how SWFObject is called on your page.
If you’re a KFE 1.x user, all of your existing KFE tags will work, as 2.0 is largely backwards compatible with the 1.x versions, with a few caveats.
Basic Usage
For installation and basic usage instructions, refer to either the KFE for Wordpress or KFE for Textpattern pages, whichever is applicable to you.
Tag Generator
Available since KFE 2.0, the Kimili Flash Embed Tag Generator is a modified version of the SWFObject 2 HTML and Javascript Generator and is integrated tightly into your CMS of choice, making it very easy to build KFE tags with the proper formatting.
To launch the Tag Generator in Wordpress and you’re using the rich text editor, click the button with the Flash player icon. If you’re using the HTML tab to edit your content, click the “Kimili Flash Embed” button. If you use Textpattern, you’ll click the link on the left the article, form or page editor which reads Insert Flash. However you get there, you’ll be presented with something resembling this:
As you can see, there are three main sections in the Generator – SWFObject Configuration, SWF Definition and Alternative Content. Lets take a closer look at each one.
SWFObject Configuration
This is where you define how SWFObject will treat the Flash movie you’re embedding. You can choose the publishing method (more on this in attributes), the required Flash player version for your Flash movie as well as whether or not you want to use Adobe’s Express Install to update users who may not have a new enough Flash version for your movie.
SWF Definition
The attributes and parameters that dictate how your Flash movie will be displayed get set here. This is where you can set the path to your SWF, define variables to pass into your SWF and set any attribute that the Flash player recognizes from allowfullscreen to wmode and anything in between.
Alternative Content
This where you set any HTML content that should be displayed if your Flash movie doesn’t get rendered. There are good reasons why you should provide alternate content for your Flash movies which I go into more detail about elsewhere on this page.
Once you’ve defined the specifics of your SWF, clicking the Generate button will create a valid KFE tag and place it in your editor at the cursor position. It should be also be noted that a number of the default values in the Generator can be modified to better suit your needs in the configuration options.
Available Attributes
All tag attributes should be lowercase and double quoted.
Attributes for [kml_flashembed /]
There only one attribute required in a KFE tag: movie. All of the available attributes for the KFE tag should be lowercase and double quoted. They are:
MOVIE (required)
The path and file name of the Flash movie you want to display.
ALLOWFULLSCREEN
( true | false ) Enables full-screen mode. The default value is false if this attribute is omitted. You must have version 9.0.28.0 or greater of Flash Player installed to use full-screen mode.
ALLOWNETWORKING
( all | internal | none ) Controls a SWF file’s access to network functionality. The default value is ‘all’ if this attribute is omitted.
ALLOWSCRIPTACCESS
( always | never | sameDomain ) Controls the ability to perform outbound scripting from within a Flash SWF. If omitted, the default value is “sameDomain” in most situations, except if the user’s Flash Player version is lower than 9.0.115.0 and the Flash movie is published for FP7 or earlier. In that case, the default will be “always”. Adobe has more information.
ALTTEXT (very deprecated)
The text you want to display if the required Flash player is not found. I strongly recommend that you nest alternative content in your KFE tags in favor of using this attribute.
BASE
( . or base directory or URL) – Specifies the base directory or URL used to resolve all relative path statements in the Flash Player movie. This attribute is helpful when your Flash Player movies are kept in a different directory from your other files.
BGCOLOR
( #RRGGBB, hexadecimal RGB value) – Specifies the background color of the Flash movie.
DEVICEFONT
Specifies whether static text objects that the Device Font option has not been selected for will be drawn using device fonts anyway, if the necessary fonts are available from the operating system.
FID
Use this attribute to give your movie a unique id on the page for scripting purposes. If omitted, a random ID is assigned to your movie.
FVARS
Pass variables (name/value pairs) into your movie with this attribute. You can pass in as few or as many variables as you want, separating name/value pairs with a semicolon. Syntax is as follows:
fvars=" name = value ; name = value "
In addition to hard coded values, you can also pass in arbitrary Javascript or PHP code, like such:
- Javascript –
href = ${document.location.href;} - PHP –
date = ?{date('F j, Y');}
If you’re using Textpattern, you also have access to many TXP environmental variables, as well (the full list is in the the plugin help section).
- Textpattern –
section = $s
These can be strung together in any order inside the fvars attribute:
fvars=" href = ${document.location.href;} ; date = ?{date('F j, Y');} ; name = Johnny Bravo "
FVERSION
You can specify what version of the Flash player is required to play your movie. If you omit this attribute, the value set in the plugin options will be used.
HEIGHT
The height of the Flash movie. You can specify in pixels using just a number or percentage. If you omit this attribute, the value set in the plugin options will be used.
LOOP
( true | false ) – Specifies whether the movie repeats indefinitely or stops when it reaches the last frame. The default value is true if this attribute is omitted.
MENU
- (
true) displays the full menu, allowing the user a variety of options to enhance or control playback. - (
false) displays a menu that contains only the Settings option and the About Flash option.
PLAY
( true | false ) – Specifies whether the movie begins playing immediately on loading in the browser. The default is true.
PUBLISHMETHOD
- (
static) – Embed Flash content and alternative content using standards compliant markup and use unobtrusive JavaScript to resolve the issues that markup alone cannot solve. - (
dynamic) – Create alternative content using standards compliant markup and embed Flash content with unobtrusive JavaScript.
If you omit this attribute, the value set in the plugin options will be used.
QUALITY
( low | high | autolow | autohigh | best ) – Specifies the playback quality of the Flash movie.
SCALE
( showall | noborder | exactfit ) – Dictates how the movie fills in the specified target area.
SEAMLESSTABBING
( true | false ) Specifies whether users are allowed to use the Tab key to move keyboard focus out of a Flash movie and into the surrounding HTML (or the browser, if there is nothing focusable in the HTML following the Flash movie). The default value is true if this attribute is omitted.
SWLIVECONNECT
( true | false ) Specifies whether the browser should start Java when loading the Flash Player for the first time. The default value is false if this attribute is omitted. If you use JavaScript and Flash on the same page, Java must be running for the FSCommand to work.
TARGET
When setting publishmethod to dynamic, this is the ID of an element on your page that you want your Flash movie to display within. If you don’t set this attribute, a random target ID will be generated. Will be ignored if publishmethod is static.
TARGETCLASS
This is the class name of the element on your page that you want your Flash movie to display within – helpful for CSS Styling. If you omit this attribute, the value set in the plugin options will be used.
USEEXPRESSINSTALL
( true | false ) Use this if you want to invoke the Flash Player Express Install functionality. This gives users the option to easily update their Flash Player if it doesn’t meet the required version without leaving your site.
WIDTH
The width of the Flash movie. You can specify in pixels using just a number or percentage. If you omit this attribute, the value set in the plugin options will be used.
WMODE
( window | opaque | transparent ) – Sets the Window Mode property of the Flash movie for transparency, layering, and positioning in the browser.
You can find out more about Flash player attributes here
Defining Alternate Content for a Flash Movie
With KFE 2.0, it is now much easier to specify alternative content which gets displayed when your Flash doesn’t get rendered. This could happen if a user doesn’t have a recent enough Flash player installed or lacks the Flash player altogether, such as on an iPhone. Another reason to specify alternative content is for search engine optimization, or SEO. Most search engines aren’t very good at indexing content in Flash movies, if they can do it at all (Google can, but only with content that has been hard coded into a SWF—dynamic content in a SWF doesn’t get indexed). In these cases it’s best to specify some alternative content for your SWF.
To define alternative content for a SWF, you can now nest arbitrary HTML inside a KFE tag and it will be treated as alternate content for that SWF. The Tag Generator does this for you automatically. Properly nested alternative content looks like this:
[kml_flashembed movie="/my/great/movie.swf" width="400" height="300"]<!-- Begin Alternate Content --><p><a href="http://adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p><!-- End Alternate Content -->[/kml_flashembed]
Using Flash Player Express Install
If you want to give visitors to your site the option to upgrade their Flash Player to the latest version as quickly and seamlessly as possible, you can use the Flash Player’s Express Install functionality. Included with Kimili Flash Embed is a standard expressinstall.swf which you can display to users when they don’t have a current enough version of the Flash Player to properly view your SWF.
General Notes
There are a few things to keep in mind when using Express Install:
- Express install will only fire once, the first time that it is invoked
- It is only supported by Flash Player 6.0.65 or higher on Win or Mac platforms
- It requires a minimal SWF size of 310×137px so the upgrade dialog can be seen by the user if the Express Install is triggered.
- If you’re using the Textpattern version of KFE, you have to set up a reference to the expressinstall.swf file when you first install KFE 2.
Specifics
1. Define the minimum flash player version required by your .SWF using the fversion attribute:
fversion="9"
2. Add the useexpressinstall attribute to your [kml_flashembed /] tag, like this (there is a checkbox for this in the Tag Generator):
useexpressinstall="true"
In the end, your KFE tag should look something like this:
[kml_flashembed movie="filename.swf" height="300" width="300" fversion="9" useexpressinstall="true" /]
That is all you need in order to invoke the Express Install functionality. In the case of the above KFE tag, if a user arrives at your site with either a Flash Player 6, 7, 8 or an early revision of 9 installed, they will be alerted that they need a more recent version of the Flash Player and be given the option to upgrade it without leaving your site.
Configuration Options
New to KFE 2.0 are configuration options which allow you to customize how the plugin behaves as well as set certain defaults for the Tag Generator and KFE tags that omit some parameters. In Wordpress, you can find the options by navigating to Settings → Kimili Flash Embed, and in Textpattern, you can find them by going to Extensions → Kimili Flash Embed. You’ll find the following options available to you:
SWF Filename
This is the default SWF filename which is populated in the Flash (.swf) field in the Tag Generator. This is especially useful if you use a common player to play FLVs, for instance. You can specify a URL with an absolute file path (i.e. /flies/flash/player.swf). Default is untitled.swf.
Element Class Name
This is the CSS class name applied to your rendered Flash movies. If you omit this attribute from a KFE tag, whatever value you have set here will be applied to the tag. Default is flashmovie.
Publish Method
Specifies the default publishing method? for your SWF. If you omit this attribute from a KFE tag, whatever value you have set here will be applied to the tag. Default is static
Dimensions (width×height)
Specifies the default width and height for your SWFs. If you omit either of these attributes from a KFE tag, whatever value you have set here will be applied to the tag. Default is 400×300
Flash Version
Specifies the default Flash player version (Major.Minor.Release format) required to display your SWFs. If you omit this attribute from a KFE tag, whatever value you have set here will be applied to the tag. Default is 8.0.0
Express Install URL (Textpattern Only)
If you plan on using the Express Install functionality, you’ll need to set a reference to the bundled expressinstall.swf here. See more info in the Textpattern Basic Usage. Default is http://www.yourdomain.com/files/expressinstall.swf.
Alternate Content
Specifies the default alternative content to display when your SWF isn’t rendered. Default is a “Get Flash Player” badge linked to Adobe’s Flash Player download page.
Create a reference to SWFObject.js?
Decide whether or not you want to create a reference to SWFObject 2.1 in the HTML of your page templates. It is useful to turn this off if you already have SWFObject being referenced elsewhere in your code. Note that SWFObject 2.x is NOT compatible with SWFObject 1.x! KFE 2 requires SWFObject 2.x. Default is true
Where do you want to reference SWFObject.js from?
If you choose to create a reference to SWFObject 2.1, you have 2 options in terms of where you reference it from. Internal creates a link to the copy of SWFObject bundled with the plugin. Google Ajax Library creates a link to the copy of SWFObject hosted in the Google’s Hosted Ajax Library. The advantage of this is that the Javascript gets served with correct cache headers and it saves you a bit of bandwidth on your server. Default is Google Ajax Library
Backwards Compatibility Gotchas
KFE 2.0 is mostly backwards compatible with KFE 1.x, so if you’ve been using the 1.x version and just creating basic KFE tags, you should be able to upgrade with no issues whatsoever. There are, however, some attributes which were available in 1.x which are no longer available in 2.0. This is due primarily to changes in SWFObject itself when it went to 2.0, unless otherwise noted. The 1.x attributes which are no longer supported are:
detectkeynoscript– This is now handled by defining alternate content properly.redirecturlxiredirecturlxiswf(Textpattern only) – This is now handled by the Express Install URL in the configuration options.
Wordpress Users – One other minor backwards compatibility issue for you has to do with the format of KFE tags. In very early versions of this plugin, you defined KFE tags using angle brackets – <kml_flashembed ... />. When problems arose with using angle bracket tags in Wordpress’ Rich Text Editor, I introduced the familiar square bracket variety – [kml_flashembed ... /]. Up to and including KFE 1.4.3, both versions of the tag formatting were supported. However, in order to simplify things in the KFE 2.0 code, the old angle bracket tags are no longer supported. If you have any posts which use the old formatting, you’ll have to go back and update them to square brackets in order to continue rendering those Flash movies correctly.
FAQs
I put a Flash Movie in my header. It works on the home page, but not on any other pages. Why?
When you embed a SWF on an HTML page, you have to make sure that you use an absolute path to reference your SWF, not a relative one. The reason for this is that the browser looks for the SWF relative to a page’s URL. Therefore, by using an absolute path, you’ll ensure that the browser always looks for the SWF in the same place, regardless of what the page’s URL may be. The difference looks like this:
Relative Path incorrect
[kml_flashembed movie="myMovie.swf" height="100" width="800" /]
Absolute Path correct
[kml_flashembed movie="/path/to/myMovie.swf" height="100" width="800" /]
As you can see, the main difference is that your path begin with a /, and then the path to your SWF. This tells the browser to start at the root of your site and find your SWF from there. Note that the absolute path need not include your site’s URL—it’s probably best if it doesn’t include it, as it’s more portable if your URL were to change.
I’m using SlideShowPro (or a similar slideshow tool). It works fine if I open the SWF directly in a browser, but on my site, it doesn’t display any content. What gives?
SlideShowPro reads an XML file which tells it where to find the images to display. If it doesn’t find that XML, it won’t display anything. Typically, the XML file is in the same directory as the slideshow SWF, and the slideshow SWF will look for that XML using a relative path. This is fine if you access the SWF directly in the browser, but as I explain in the previous question, once you embed that SWF in an HTML page, the SWF resolves paths relative to that HTML page, not relative to itself.
The way to override this is to use the base parameter. Since the slideshow SWF and its XML file are typically in the same directory, set the base value to the absolute path to that directory. It should look something like this:
[kml_flashembed movie="/path/to/my/slideshow.swf" base="/path/to/my/" /]
Of course, if your XML lives in a different directory, they you should change the value of the base parameter to match.
My Flash movie references external XML/image/audio/video/etc. files to populate its content and it’s not working. What’s going on?
If you’re using the fvars attribute to pass your Flash movie a path to an external file, make sure the path you’re feeding it is absolute, not relative. As in the first question above, when a SWF is embedded in an HTML page, the browser references other files that the SWF may ask for relative to the HTML page, not the SWF. Using absolute paths is the best way to make sure the browser always knows where to find those files.
In situations like the SlideShowPro question above, It may be the case that a relative path to an XML file is embedded in the SWF itself. If you can’t override the path in the SWF, you can use KFE’s base attribute to define a absolute base URL that the relative path will use as its point of reference to find those files.
I made sure to use an absolute path to reference my SWF (and it’s assets), but it’s still not working. Help!
In cases like this, the simplest answer is usually the best. Take that absolute URL, put it directly in a browser’s address bar and try to load the file in the browser. Do you see it? If not, make sure to correct the URL to point to the right place and then update your KFE tag with the correct URL. If you do see the file, but is still doesn’t work in your KFE tag, then feel free to contact me.
Can I use KFE on my Wordpress.com blog?
Unfortunately, no. Because it’s a hosted service, wordpress.com doesn’t allow you the same freedom to install plugins and otherwise customize your site the way that you can with your own Wordpress installation on your own server.
I see KFE tags instead of my Flash movies on my Wordpress site. How can I fix this?
This is usually due to some missing function calls when using a non-default theme. If you’re experiencing this problem and have your site running with a custom theme, the best thing to do is to go into the theme editor and check the header and footer templates. They should have function calls as follows:
Header typically header.php
<?php wp_head() ?></head>
Footer typically footer.php
<?php wp_footer() ?></body>
If either the wp_head() or the wp_footer() php functions are missing, KFE will not work, so you’ll need to add them in. They should be placed, respectively, just before the </head> and </body> elements, as illustrated above.
I have HTML drop-down menus (or some other positioned HTML elements) which get hidden behind my Flash movie. How can I fix this?
Fortunately, there’s a very simple remedy for this. Just set the wmode attribute to transparent in your KFE tag and you should be good to go.
I set the play attribute to false in my KFE, but the video I’m embedding still plays. What gives?
The play parameter is misleading when it comes to embedding video. What it does is tell a simple flash movie with a timeline to play or stop, but that’s not the case with video. At its simplest, Flash video requires you have a player SWF – which has the playback controls and the stage for showing the video – and a video file – most likely an FLV – which gets loaded in the player SWF. The KFE play parameter has no control over the playback of video, but the player SWF does. Most video player SWFs have some way to play or stop the loaded video defined which is specific to that player. It could be a parameter that you pass to the video player when you load it. It could be a Javascript function that you call. It could be a combination of these things, too. You’d need to reference the documentation of the player that you’re using in order to find out what works for you in your specific situation.
How do I center or add some space around Flash movies on my page?
This is easy to do using a bit of CSS. By default, KFE renders Flash movies either within a <div> or an <object> element with has a class name of “flashmovie” (or whatever you set in your configuration options). Utilizing that, you can add a CSS definition like this:
div.flashmovie {margin: 1em auto;}
That will add a 1 em margin on the top and bottom as well as center of all the Flash movies on your site that you’ve inserted using KFE. Also, remember that if you can apply a different class name to a certain Flash movies using the targetclass attribute. This is useful if you want to, for example, use a Flash movie in the header on your site and don’t want the default margins you’ve specified in your CSS to be applied to it.
How do I make my Flash movie clickable?
If you want somebody to be able to click on your Flash movie and have it work as a link, then you actually have to build that link, or clickable area into your SWF. KFE cannot “wrap” your SWF with a link.
How do I open a new window when someone clicks on my Flash movie?
First, re-read the previous question.
Now, if you still want to open a new window from your Flash movie, be aware that it’s a bad idea because it probably won’t work. You’d have to embed a window.open() javascript call in your movie, but the problem is that when you do that and someone clicks on it, any decent browser with a popup blocker (most, these days) will not allow it. Fact is, because the Flash player is a plugin, browsers don’t know whether a javascript call which originates from within a Flash movie was triggered by user interaction or programatically. Since the latter can easily be used with malicious intent (if you’ve ever see a Windows machine infected with spyware, you know what I’m talking about), browsers simply don’t allow it. Don’t do it.
Does this thing work with FLV files?
Sure it does, but you can’t just reference a FLV file directly with KFE. You have to insert a video player SWF onto your page and load an FLV into that. If you don’t have an video player SWF, there are a number available online such as the JW FLV Media Player.
The general approach you’d take with KFE is to embed your video player as the SWF and use the fvars attribute to specify either the url to the FLV file the URL to a playlist that references the FLV file(s). The specifics of how the fvars would be defined depends on the particular requirements of your FLV player.
I’d like to use KFE to put a Flash header in my Wordpress site. How do I do it?
You can put a kml_flashembed tag anywhere on your site, but it requires some familiarity with editing PHP and HTML files. With the Tag Generator, the plugin is set up to insert tags in posts very easily, but you can manually insert a tag in any of your theme files as well. Simply navigate to Appearance → Editor, select one of your current Theme’s PHP files, and insert a KFE tag among the HTML and PHP where you want your SWF to appear.
How about for my Textpattern site?
Sure! Just use a kml_flashembed tag in your page template and you’re good to go.
Help! I installed KFE on my Wordpress site and everything blew up! What do I do?
The first step is to check for incompatibilities with another plugin. Leaving KFE active, disable other plugins you have active one at a time, each time checking to see if your site is still blowing up. The moment you see that it doesn’t, the last plugin you disabled is the culprit – let me know about it.
Of course, this assumes that you are using a stock installation of Wordpress, which is the only type of installation I’ve tested this plugin on. If you’re using a non-standard theme or you’ve modified or hacked the core PHP files in any way, I cannot guarantee any functionality, nor offer you support on how to fix things when they go awry. Sorry.
I’m still having trouble getting KFE to work in my Wordpress site. Can you show me what to do?
Although it’s using an old version of the plugin, Brooks Andrus has put together a helpful screencast that walks through process of installing an using KFE.
License
To keep things on good terms with both the Textpattern and Wordpress GNU General Public Licenses, as well as Textpattern’s upcoming shift back to BSD, Kimili Flash Embed is now distributed under the terms and conditions of the BSD License. This basically means that you can do almost whatever you please with the code, so long as you retain the copyright notice. The only stipulation to that is if you want to use this code to endorse or promote another product, contact me first.
Support
Support for KFE is neither expressed nor implied. This is, after all, a free product. Ninety percent of support questions I receive are answered in the FAQs above, so if you’re having problems, please refer to them.
If you do find any genuine bugs or have any suggestions that could improve future versions of KFE, by all means, contact me.
Donate
If you enjoy using Kimili Flash Embed and find it useful, please consider making a donation. Your donation will help encourage the plugin’s continued development so you can be sure it always works with ever newer versions of your CMS of choice. Besides, when you donate, you will be repaid tenfold in good karma.
Version History
Version 2.3.1 Wordpress only
- Changed the way the Generator code detects the Wordpress directory. This will allow KFE to be references via symbolic links.
- Updated information about the “allowScriptAccess” defaults
- Fixed some typos and clarified some information about how the internal SWFObject references are set up. (Thanks Adam Samec for pointing out these last two tweaks)
- Removed inline attribution in public HTML
Version 2.3 Wordpress only
- Security patch to utilize updated version of SWFObject (identified by kitchin). Now, when choosing to use the internal version of SWFObject (which is the recommended approach as of this update), KFE will reference the copy of SWFObject included with Wordpress if you’re using WP 3.3.2 or newer, otherwise, it’ll reference the copy of SWFObject bundled with the plugin.
- Addressed issues with some warnings being thrown.
Version 2.2.1 Wordpress only
- Tested up to Wordpress 3.3.1
- Added Romanian localization (Thanks to Web Hosting Geeks)
Version 2.2 Wordpress only
- Tested up to Wordpress 3.1.3
- Updated some deprecated functions
- Added Irish Gaelic localization (Thanks to let’s be famous)
Version 2.1.5 Wordpress only
- Tested up to Wordpress 3.0
- Added German localization (Thanks to BHV)
Version 2.1.4 Wordpress only
- Tested up to Wordpress 3.0 beta 2
- Fixed a conflict with the WP FollowMe plugin, where the flash content of that plugin was getting hidden.
- Added Dutch localization (Thanks to Alanya Hotels)
- Added Latvian localization (Thanks to Antsar)
Version 2.1.3 Wordpress only
- Corrected a conflict with the Contact Form 7 plugin which was causing a blank KFE Tag Generator window.
Version 2.1.2 Wordpress only
- Added Hindi localization (Thanks to Outshine Solutions)
Version 2.1.1 Wordpress only
- Fixed a bug introduced in 2.1 when not using SWFObject 2.2’s auto hide/show behavior.
Version 2.1 Wordpress only
- Now utilizes SWFObject 2.2
- Added ability to set defaults for every attribute in the KFE tag generator.
- Fixed an issue when using KFE on SSL pages.
Version 2.0.3 Wordpress only
- Added Russian & Belarusian localizations (Thanks to Fat Cow)
Version 2.0.2 Wordpress only
- Added Spanish localization (Thanks to Cropcreativos Hosting)
- Fixes an HTML validation issue when using the fvars attribute
Version 2.0.1
- Complete rewrite utilizing SWFObject 2.1
- Fixes an incompatibility with the Rich Text Editor in Wordpress 2.7
Version 2.0
For all intents and purposes, 2.0 was a public beta for Wordpress users. Any issues that arose there have been addressed in 2.0.1.
Version 1.4.3
- Corrects a bug with how fvars values are rendered in RSS feeds
- Improved clean url support for feeds – a Textpattern specific change.
Version 1.4.2
- Wordpress Version fix
- Fixed a problem with URL file-access on some server configurations.
Version 1.4.1
- Wordpress Version fixes
- Fixed an incompatibility with other plugins that were using the buttonsnap.php library
- Updated Toolbar buttons to work with TinyMCE 3, used in Wordpress 3
Version 1.4
- Added full screen support for full Flash Player 9 compatibility – Finally!
- Fixes a bug when applying percentage based widths and heights – Now the widths and heights get passed correctly to the SWFObject script.
Version 1.3.x
- Updated SWFObject Javascript to latest codebase – SWFObject 1.5 is included
- Super Simple Express Install – Getting a user to upgrade their Flash player almost couldn’t get any easier.
- Cleaned Up Code – Declared some undeclared variables.
Textpattern Specific Changes in 1.3.x:
- Fixed issue with IE7 – required the following:
- Embedded SWFObject.js reverted back to 1.3d in order to kill a bizzare JS bug in IE7 (grrrrrr….)
- Implemented workaround for IE7 Javascript bug by adding
srcattribute to<txp:kml_flashembed_js /> - SWFObject version 1.5 included as external JS.
- Added
xisrcattribute – Allows you to take advantage of the simplified Express Install functionality in SWFObject 1.5 - KFE works in debug mode – Now the plugin should throw no errors if you have your production status set for debug
Version 1.2
- Added Flash movies to XML feeds. – Now your SWFs are properly embedded in your RSS and Atom feeds, which should validate.
- Added a “targetclass” attribute – This allows you to define a class name for the element which the SWF will be rendered within.
- Improved FVARS functionality – Now you can pass in URLs with query strings and JSON objects as parameter values.
- Updated JS to latest codebase. – Geoff keeps refining his code, so the latest is included here – SWFObject 1.4.4.
Version 1.2 – Wordpress specific
- Improved compatibility with other plugins. – There were a few clashes with other plugins – this release should take care of them all.
- Removed the need to turn off GZIP compression.- finally, this annoyance is gone.
- KFE creates valid HTML – No more nesting of a
<div>within a<p>. - New Toolbar button – Added Rich Text Editor Toolbar button to quickly insert KFE tags in a post. Works in WP 2.1, too!
Version 1.1
- Easy embedding of multiple instances of the same SWF – A number of people asked about this. Say you have a FLV player – a single .SWF file that you feed your FLVs into. Now say you have 3 different posts on a page that use that FLV player to play 3 different movies. With previous versions of KFE, only one of them would show up unless you wrote some extra code into your posts to prevent that from happening. The workaround for that isn’t well documented and is more trouble than it needs to be. Now KFE does it for you. Just put your
kml_flashembedtags in, and KFE does the rest for you. - Removed FlashObject code from RSS and Atom feeds. – Older versions of KFE broke RSS feed validation by including unnecessary javascript into your feeds. No longer – the Javascript and any references to your Flash movies are now removed from your feeds.
- Added
baseattribute – You can now define a base URL for any relative paths in your SWFs to use as a point of reference. - Updated JS to latest codebase. – Includes FlashObject 1.3d.
Version 1.0
- Express Install Functionality – Detect which version of the Flash player a visitor to your site has and give them the option to seamlessly upgrade their player if it doesn’t meet the minimum requirements of your Flash content.
- More Flexible Flash Variables – Pass arbitrary Javascript or PHP to pass values into your SWF.
- Wider Browser Support – Your Flash content should now display in nearly any Javascript capable browser, back to IE4 and NS4. In the event that your Flash content doesn’t display, your visitors will be presented with any alternate content that you provide.
- Improved Compatibility – Updated compatibility with newer versions of Textpattern and Wordpress.








