Menu
Forums
New posts
Search forums
What's new
New posts
New profile posts
Latest activity
Members
Current visitors
New profile posts
Search profile posts
Advertise
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Menu
Log in
Register
Forums
Cannabis Cafe
Politics
War
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
Members who reacted to message #10170
All
(2)
Like
(2)
May 16, 2022
Roger A. Shrubber
Well-Known Member
·
From
on the side of a mountain
Messages
28,996
Reaction score
62,811
Points
388
May 15, 2022
DIY-HP-LED
Well-Known Member
·
From
Canada
Messages
57,509
Reaction score
74,441
Points
388
Loading…
Forums
Cannabis Cafe
Politics
War
Top
// Add this to your XenForo extra.js template or include in a separate JS file // 1. Basic Twemoji Implementation $(document).ready(function() { // Load Twemoji library $.getScript("https://unpkg.com/
[email protected]
/dist/twemoji.min.js", function() { // Function to replace native emojis with Twemoji function replaceTwemoji() { // Parse the DOM to replace emojis twemoji.parse(document.body, { folder: 'svg', ext: '.svg', callback: function(icon, options) { // Exclude certain characters if needed switch (icon) { case 'a9': // © copyright case 'ae': // ® registered trademark case '2122': // ™ trademark return false; } return ''.concat(options.base, options.folder, '/', icon, options.ext); } }); } // Initial replacement replaceTwemoji(); // Watch for new content (like when loading new posts) $(document).on('xf:layout', function() { replaceTwemoji(); }); // 2. Modify the XenForo emoji picker to use Twemoji if (XF.EmojiCompleter) { // Override the default emoji completer XF.EmojiCompleter = XF.extend(XF.EmojiCompleter, { insertEmoji: function(shortname) { // Call the original method to insert the emoji this.__super(shortname); // After insertion, replace with Twemoji setTimeout(function() { replaceTwemoji(); }, 10); } }); // Replace emojis in the picker $(document).on('shown.bs.dropdown', '.js-emojiContainer', function() { setTimeout(function() { twemoji.parse(document.querySelector('.js-emojiContainer'), { folder: 'svg', ext: '.svg' }); }, 50); }); } }); }); // 3. Add CSS for proper emoji display $(document).ready(function() { // Add CSS for emoji styling $("