-
Notifications
You must be signed in to change notification settings - Fork 1
FAQ
It converts Figma designs into Elementor templates automatically. Paste a Figma URL, select frames, and import them as Elementor templates with styles preserved.
No. The plugin works with the free version of Elementor. It uses Elementor Containers (Flexbox) which are available in Elementor 3.0+ (free).
No. The plugin always creates new templates. It never modifies, deletes, or overwrites existing Elementor content.
- Go to Figma Settings → Account → Personal Access Tokens
- Click "Generate new token", give it a descriptive name
- Copy the token (starts with
figd_) - Paste it in Figma Sync → Settings in your WordPress admin
Open your design in Figma. The URL format is:
https://www.figma.com/file/abc123DEF/My-Design
The part between file/ and /My-Design (abc123DEF) is your file key. You can paste the full URL or just the key.
Yes. Your token is encrypted at rest using AES-256-CBC with your WordPress salt key (wp_salt('AUTH_KEY')). Old plaintext tokens are automatically encrypted on the next save.
- Settings — your encrypted Figma token, default file key, and sync preferences (WordPress options table)
- Templates — imported designs as Elementor library posts
- Cache — Figma API responses as WordPress transients (auto-cleared)
- Logs — debug logs (if enabled)
The uninstall.php script cleans up:
- All plugin options (
hello_figma_pat,hello_figma_file_key, etc.) - All transients
- All post meta (
_hello_figma_source,_hello_figma_data, etc.) - Attachment meta (
_hello_figma_node_id)
Your Elementor templates remain but lose their Figma metadata.
Not yet. Batch import is planned for a future release. Currently, import one frame at a time.
If you have rotated elements (rotation > 0.01°), they skip absolute positioning in the current version. Correct positioning of rotated elements requires the full relativeTransform 2×3 matrix, which is a complex calculation planned for a future release.
Figma's API has a rate limit of 2 requests per second with a burst limit. If you make too many requests, you'll get a 429 response. The plugin has built-in rate limiting (0.5s delay between requests) and automatic retry (up to 3 attempts).
Yes. Use the hello_figma_cache_ttl filter:
add_filter('hello_figma_cache_ttl', function($ttl, $context) {
if ($context === 'file') return DAY_IN_SECONDS; // cache file data for 1 day
return $ttl;
}, 10, 2);Yes. Use the hello_figma_api_timeout filter:
add_filter('hello_figma_api_timeout', function() { return 180; }); // 3 minutesPHP 8.0 or higher. The plugin uses strict types, named arguments, match expressions, and modern PHP 8 features.
WordPress 6.6 or higher (tested up to 7.0).
The plugin is compatible with standard WordPress installations. Multisite support has not been specifically tested.
- Make sure you copied the full token (starts with
figd_) - Tokens expire after 90 days — generate a new one
- Check that the token has access to the Figma file you're trying to import
- Verify the file key is correct
- Make sure your Figma token has access to the file
- Check that the file hasn't been deleted or moved
- Large files may take longer — increase the API timeout filter
- Check your internet connection
- The Figma API may be rate-limiting your requests
- Try importing individual frames instead of the whole file
- Figma and CSS render text differently (anti-aliasing, etc.)
- Some gradients with complex stops may need manual adjustment
- Check that your Elementor version supports all the features used
See Contributing for full details. Quick ways to help:
- Star the repo on GitHub
- Report bugs via GitHub Issues
- Suggest features via Discussions
- Submit pull requests for bug fixes or improvements
Powered by Figma to Elementor — Convert Figma designs into Elementor templates.