[nodebb-plugin-ns-embed] NS Embed


  • Plugin & Theme Dev

    NodeBB: Embed

    Embed media and rich content in posts: youtube, vimeo, twitch etc. It's a dynamic plugin, it means, you can add your own embed code, you don't need to write separate plugin for it. By default, plugin is shipped with several predefined embeds, you can tune them, remove them or add new ones:

    • Youtube
    • Vimeo
    • Coub
    • Vine

    To install predefined embeds, use utility in ACP.

    Don't forget to share your good ideas for embeds with others. Most popular will be included in predefined set.

    Links

    Preview


  • Plugin & Theme Dev

    Version 1.1.0

    • skip invalid regular expressions
    • updated default youtube rule (to handle www 😉 )


  • quite impressive work!


  • GNU/Linux

    @Nicolas did you get twitter working in this ?
    code to implement

    Watch
    (?:https?://)?(?:twitter.com)/([^/"\s])/statuse?s?/([^/"\s])(/photo/\d|)
    Replace
    <blockquote class="content twitter-tweet" lang="en"><a href="https://twitter.com/$1/status/$2"></a></blockquote><script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

    I have everything working except it keeps adding text around the embed:

    " target="_blank" rel="nofollow">

    [this is where tweet embeds perfectly]

    /a>

    this something to do with externel links in nodebb, is it doing it automatically internally or something? is there a way to remove it

    love your work btw, keep it up


  • Plugin & Theme Dev

    I didn't try to do it with Twitter. But, basically, you can embed nearly everything.
    Double check plugin description, there are some conflicts with another plugins. Maybe you didn't do something 😉


  • GNU/Linux

    @Nicolas will try reorder plugins, nope same issue

    I have a feeling it's the externel link adder/checker, cos I've checked out the code, it's not the markdown / blockquote

    must be the way it is checking <a href="s"></a> if you notice the way twitter embeds it's content. It's not the standard iframe embed


  • Plugin & Theme Dev

    @codejet

    Also try to change only for blockquotes:

    <blockquote class="content twitter-tweet" lang="en"><a href="https://twitter.com/$1/status/$2"></a></blockquote>
    

    And Javascript inject only one time

    <script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>
    

    It doesn't good, that you inject Javascript to the page after every replaced twitter url.


  • Plugin & Theme Dev

    @codejet you have to disable auto-linking in Markdown plugin.


  • GNU/Linux

    will try add the javascript to the custom header in nodebb panel. last time I tried this I'm sure it didn't work well


  • GNU/Linux

    @Nicolas tried numerous things in the markdown config, but the option to work would look to be

    Open external links in a new tab/window
    Tell web crawlers that external links are not to be followed

    EDIT: Disabling both of these reduces it to

    ">
    [embed works]
    /a>

    th@ would seem to be the one doing you would think, but has no effect

    also the twitter likes to have the javascript only after the blockquote. doesn't work in the custom header. doh, would you be able to strip it from adding it to content (between the <p></p>'s in ur plugin ?


  • Plugin & Theme Dev

    If it likes after, place it in the end of the page:

    <script ...
    </body>
    

  • GNU/Linux

    @Nicolas said:

    If it likes after, place it in the end of the page:

    <script ...
    </body>
    

    <script>
    require(['forum/footer']);
    </script>
    <script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>
    </body>
    </html>

    unbelievably that updates all of the tweet embeds now without putting it in the embed replace code

    but still the same issues with it putting html in the post as content between the <p></p>'s
    post looks like:

    ">
    [embed]
    /a>

    not sure what's happenning


  • GNU/Linux

    ok, well placing the javascript @ the end before </body> has bad effect because the post doesn't update after hitting [Submit] button. Basically updates after you push a page reload. So my conclusion is that the javascript code is fine added to the replace code , it seems to work perfectly.

    There is still the same issue with it adding html as content around the embed, somehow it does this and I don't remember actually that it had this problem around nodebb version 0.6.0/0.7.0 ...

    So I'll just leave you with this pic to show progress:
    0_1450846824849_embed.jpg


  • Plugin & Theme Dev

    Version 2.0.0 Final

    New version is available. Summary: important one, plugin doesn't create any restrictions anymore. Auto-linking restriction is removed. Even more interesting fact - you can use plugin with Markdown plugin or without. It means, plugin should work in most cases.

    • Important: compatibility with Markdown plugin
    • Compatibility with content plugins
    • Best practice for ACP scripts
    • Update all dependencies

    P.S.
    "Final" means - my TODO list is empty for this plugin. I will do patches if needed, for now, I will concentrate on another plugins.


  • Plugin & Theme Dev

    Version 2.0.1

    New version is available. Improved parsing of Youtube Urls, now it ignores links to Youtube profiles.
    Don't forget to delete your current Youtube rule and install a new one (just click on Install Default Rules - It will install only missing rules, it will not override any rules which are currently in use)



  • Hi.

    I'm currently using your plugin and it really works like a charm in order to extend the Markdown syntax, thank you.
    However, I have a little issue with my code section. Can your plugin ignore <pre> and <code> tags ?

    Thank you for getting your attention.


  • Plugin & Theme Dev

    Core functionality of the plugin is Regular Expressions. If you need to ignore some particular tag, or something, you can handle it via your regular expression.


  • Plugin & Theme Dev

    Version 2.1.0

    A new version is available. Twitch rules are unlocked.

    Changelog:

    • Add Twitch Default rule for Live content
    • Add Twitch Default rule for VoD

  • Plugin & Theme Dev

    Here is an example how Live embed for Twitch with disabled auto-play:

    2.1.0 Twitch Live Preview



  • Is there any examples of how of the 'watch' and "replace" for embedded videos? I am trying to get uploaded videos embedded but I can't seem to get the proper regex or new replacement code to get it to work.

    Do you regex on the markdown code, or the url? What is the replacement code?




Looks like your connection to NodeBB was lost, please wait while we try to reconnect.