0


I have a wordpress site in which we tend to use a lot of images in our posts. Now these images are filled with statistics and people tend to copy it for their reference. Now, what we want is to let the users have an automatically generated embed code for these images.

We found something similar for this purpose - Embed Anything plugin for wordpress. However, the plugin seems to be broken for some reason and does not work properly with the embedded images. And yes I have used the publisher's ID properly.

Can someone find out what's the issue with this plugin? Or else, can someone suggest any script or code which generates the embed code similar to the avatar hosting sites? So that i can integrate the same in wordpress.

Thanks in advance.

digster
  • 396
  • 5
  • 20

1 Answers1

1

This can be done using a shortcode:

/*
 * Usage: 
 * [embedimage img="http://domain.com/wp-content/uploads/image.png" title="The image title"]
 * or without a permalink wrapping the image: 
 * [embedimage img="http://domain.com/wp-content/uploads/image.png" title="The image title" nolink=""]
 */
add_shortcode('embedimage', 'so_10069934_embed_image');
function so_10069934_embed_image($atts, $content = null) {
    global $post;
    $link_init = (isset($atts['nolink'])) ? '' : '<a href="'.get_permalink($post->ID).'" target="_blank">';
    $link_end = (isset($atts['nolink'])) ? '' : '</a>';
    $html = <<<HTML
    <script type="text/javascript">
        function copyToClipboard (text) {
          window.prompt ("Copy to clipboard: Ctrl+C, Enter", text);
              return false;
        }
    </script>
    <a href="javascript:void(0)" id="copy" onclick="copyToClipboard(document.getElementById('pre').innerHTML);">Copy to clipboard</a>
    <pre id="pre" style="display:none">{$link_init}<img src="{$atts['img']}" alt="{$atts['title']}" border="0" />{$link_end}</pre>
HTML;
    return $html;
}

The Javascript solution for copying some text to the clipboard comes from here: https://stackoverflow.com/a/6055620/1287812

The function copyToClipboard should be preferably in your theme's Javascript file.

Would be nice, though, to have a nice little dialog box as used here in stackoverflow for sharing a link :) But, I guess it's not hard, just a matter of CSS styling and some jQuery.

Community
  • 1
  • 1
brasofilo
  • 23,940
  • 15
  • 86
  • 168