كود يخفي أي جزء من المساهمة عن الزوار

كود جيفري

عضو جديد
عضو انكور
أحيانًا يرغب العضو أو المدير في حجب جزء معين من مساهمته عن الزوار، كرابط تحميل أو معلومة خاصة أو كود حصري، لتشجيعهم على التسجيل في المنتدى أو لحماية بعض المحتوى من الوصول العام. هذا الكود يجعل الأمر في غاية السهولة، فكل ما عليك هو تحديد الجزء المطلوب إخفاؤه داخل صندوق الكتابة، ثم الضغط على زر الإخفاء الذي يضيفه الكود إلى المحرر، فيصبح ذلك الجزء مخفيًا عن الزوار ويظهر للأعضاء المسجلين فقط. وهو أسلوب فعال لزيادة عدد التسجيلات في المنتدى دون الحاجة إلى إخفاء الموضوع كاملًا.

مثال على الكود​

تحديد جزء من نص المساهمة ثم الضغط على زر الإخفاء لحجبه عن الزوار


شرح تركيب الكود​

كود CSS
أضف الكود التالي إلى ورقة تصميم CSS:

CSS:
table.Hidden-content .codebox,table.Hidden-content, table.Hidden-content a{
    font-size: 0;
}
table.Hidden-content img {
    display: none;
}
table.Hidden-content:after {
    content: "عليك التسجيل لرؤية المحتوى";
    display: block !important;
    padding: 5px;
    background: bisque;
    font-size: 16px;
    text-align: center;
}

كود Javascript
لوحة الإدارة ← عناصر إضافية ← إدارة أكواد Javascript
العنوان: اختيارك
الصلاحيات: المدير - المشرفون - الأعضاء
أضف الكود إلى: جميع الصفحات

إعدادات إضافة كود الجافا سكريبت لإخفاء المحتوى في لوحة إدارة المنتدى


JavaScript:
$(document).ready(function() {
    setTimeout(function() {

        // --- إضافة CSS مباشرة داخل الجافاسكربت ---
        var css = `
            table.Hidden-content, table.Hidden-content a {
                font-size:initial !important;
            }
      .codebox {
                font-size:15px !important;
            }
      table.Hidden-content img {
    display: block !important;
}
            table.Hidden-content:after {
                display: none !important;
            }
        `;
        $("<style>").prop("type", "text/css").html(css).appendTo("head");

        // --- باقي الكود لإنشاء الزر ---
        var toolbar = $(".sceditor-group:last-child");

        var createButton = function(imageUrl, clickHandler) {
            return $('<button>', {
                type: 'button',
                css: {
                    width: '30px',
                    height: '35px',
                    background: 'url(' + imageUrl + ') no-repeat center',
                    backgroundSize: '77%',
                    margin: '4px',
                    border: '1px solid #ccc'
                },
                click: clickHandler
            });
        };

        var insertTextWysiwyg = function(iframeDoc, selection, prefix, suffix) {
            var range = selection.getRangeAt(0);
            var selectedText = selection.toString();
            range.deleteContents();

            var newText = prefix + selectedText + suffix;
            var textNode = iframeDoc.createTextNode(newText);
            range.insertNode(textNode);

            var newRange = iframeDoc.createRange();
            newRange.setStart(textNode, prefix.length);
            newRange.setEnd(textNode, prefix.length);

            selection.removeAllRanges();
            selection.addRange(newRange);

            iframeDoc.body.focus();
        };

        var insertTextTextarea = function(editor, prefix, suffix) {
            var textarea = $("textarea:visible");
            var text = textarea.val();
            var start = textarea[0].selectionStart;
            var end = textarea[0].selectionEnd;
            var selectedText = text.substring(start, end);
            var newText = prefix + selectedText + suffix;

            textarea.val(text.substring(0, start) + newText + text.substring(end));
            var newCursorPos = start + newText.length - suffix.length;
            textarea[0].setSelectionRange(newCursorPos, newCursorPos);
            textarea.focus();
        };

        var buttonClickHandler = function(prefix, suffix) {
            return function(e) {
                e.preventDefault();
                var editor = $(".sceditor-container");

                if (editor.hasClass('wysiwygMode')) {
                    var iframe = $("iframe", editor);
                    var iframeDoc = iframe[0].contentWindow.document;
                    var selection = iframeDoc.getSelection();
                    insertTextWysiwyg(iframeDoc, selection, prefix, suffix);
                } else {
                    insertTextTextarea(editor, prefix, suffix);
                }
            };
        };

        toolbar.append(
            createButton(
                'https://i.servimg.com/u/f20/16/85/77/67/12548510.png',
                buttonClickHandler('[table class="Hidden-content"][tr][td]', '[/td][/tr][/table]')
            )
        );

    }, 0);
});

ثم اضغط على زر قدم.

كود صغير لكنه يمنحك تحكمًا أكبر في المحتوى الذي تعرضه للزوار، ويحفزهم على الانضمام إلى مجتمع المنتدى. كل الشكر لصاحب الكود على هذه الإضافة المفيدة التي طوّرها بالاستعانة بالذكاء الاصطناعي.

صاحب الكود: كونان2000
 

رأيك جزء من المعرفة.

أضف تجربتك أو سؤالك، فالنقاش يكمل الفكرة.

في هذا الموضوع

صاحب النقاش

كود جيفري
كود جيفريعضو جديد

معرفة تكبر بالنقاش

وجدت معلومة مفيدة؟ أضف تجربتك أو سؤالك ليساعد النقاش أعضاء آخرين.

أكمل رحلتك

كود الروابط أو الزيارات الأخيرة في المنتدىتمييز المساهمات حسب الجهاز (الهواتف والكمبيوترات)اجعل مظهر الإشعارات مثل الفيسبوك
عودة
أعلى