A WordPress plugin to automatically save the dominant color and a color palette for an attachment image into post_meta.
لقطات الشاشة
التنصيب
The dominant color and color palette is automatically saved on upload and edit to post meta.
You need to then use get_post_meta to retrieve the “dominant_color_hex” or “dominant_color_rgb” meta key. hex returns a string, including the #, rgb returns an array with key 0 as red, 1 as green, and 2 as blue.
Alternatively, you can use the meta keys “color_palette_rgb” and “color_palette_hex” to get an array of 8 colors that feature prominently in the image.
This plugin is perfect in its simplicity. Developers thought of everything, and it makes pages with images look beautiful. PLUS, if you don’t like the color they pick to be dominant, you can choose another color from the image. So well thought out.
I just wish Wordpress wouldn’t bug me saying it hasn’t been tested with the last 3 releases. It works perfectly, and probably will regardless of updates.
Here’s how I use it in a theme in case anyone reading this is struggling.
if (has_post_thumbnail()) {$featured_image_id=get_post_thumbnail_id( );}$imageColor = get_color_data($featured_image_id, ‘dominant_color_hex’, ‘true’);$colorPaletteArray = get_post_meta ($featured_image_id, ‘color_palette_hex’, ‘true’);$complimentaryColor1 = $colorPaletteArray[0];$complimentaryColor2 = $colorPaletteArray[1];$complimentaryColor3 = $colorPaletteArray[2];$complimentaryColor4 = $colorPaletteArray[3];
And then I just assign $imageColor, and it’s 4 complimentary colors, to the relevant divs in the template. Genius plugin, and thank you for creating it.
I like this and how it does what it says. I like also that it doesn’t enqueue any scripts or CSS into the page. Great for custom theme development. Also seems to work well in Wordpress 5.0 (newest at the time of this review).
Pulls out both the dominant color and a nice color palette. Far more efficient to do this calculation once on upload rather than via PHP or JavaScript when rendering the page. Perfect!
I had to search the post_meta table to find out how the ‘dominant_override’ meta_key – it would have been useful to find that in the release notes.
A bulk calculate feature would be excellent – along with a way of colour picking the override from the posts screen in the WP Dashboard.
Otherwise, perfect for what I need 🙂
Modernise javascript for deprecated jQuery handlers
Update to latest version of PHP Color Thief
Bump version requirements to match color thief and a modern-ish WordPress (5.4+)
2.1.0
Support translated languages (Submit your translation at translate.wordpress.org!)
2.0.1
Fix a bug where loading our JS in the footer would cause a javascript error.
2.0
Add a colour picker to the attachment edit screen to override the dominant color with a custom pick.
The WordPress media gallery will now let you pick a dominant color override which will be returned in place of dominant_color_hex/rgb when set.
It’ll also let you generate a palette for legacy images uploaded before you installed the plugin.