هبة فريد

الأعضاء
  • المساهمات

    10
  • تاريخ الانضمام

  • تاريخ آخر زيارة

    إبدأ
  • Days Won

    2

السُّمعة بالموقع

8 Neutral

1 متابع

  1. إذا كنت تُصمّم قالبًا جديدًا لووردبريس أو تعدّل قالبًا جاهزًا، فإن الخطوط المُخصّصة ستجدّد منظر قالبك. في حين تأتي متصفحات الإنترنت بخطوط جاهزة افتراضية، وهي التي تستدعيها في ملف style.css، استخدام نفس الخطوط التي يستخدمها الآخرين يبدو مملًا بعض الشيء. لحسن الحظ، بإمكانك إضافة الخط الذي تختاره بسهولة عن طريق قاعدة font-face@ في CSS3. كل ما تحتاجه هو رفع الخط إلى خادوم الويب الخاص بك، ثم إضافته إلى قالبك عن طريق بضعة سطور من CSS. العثور على خطهناك أماكن عديدة للعثور على خطوط ويب جيدة مجانًا مثل FontSquirrel أو Adobe Edge Web Fonts. فقط تأكد من اختيارك لخط ذي رخصة تلائم احتياجاتك. حيث أن الخطوط المجانية ليست جميعها متاحة للاستخدام التجاري، ولكن يمكنك شراء خطوط بمقابل مادّي للاستخدام التجاري من أماكن عديدة مثل Typekit. هناك نوعان رئيسيان من الخطوط في اللغة الإنجليزية: serif و sans-serif. تمتلك خطوط serif منحنيات في أطرافها بينما لا تمتلكها خطوط sans-serif. عندما يقع اختيارك على الخط الجديد، ستحتاج لتحميل ملفه. ضع في اعتبارك أن هناك أنواع مختلفة من ملفات الخطوط وليست كلها متوافقة مع أغلب متصفحات الإنترنت. إليك مُلخّصا سريعًا عن الأنواع المختلفة للخطوط وصيغ ملفاتها: (TrueType Font (TTF: متوافق مع إنترنت اكسبلور 9.0 وما يليها، وكروم بداية من الإصدارة 4.0، فيرفكس من الإصدارة 3.5، سافاري من الإصدارة 3.1 وأوبرا من الإصدارة 10.0.(OpenType Font (OTF: له نفس التوافقيات لخط TrueType.(Web Open Font Format (WOFF: يدعمه إنترنت إكسبلورر من الإصدارة 9.0 وما يليها، كروم بداية من الإصدارة 5.0، فيرفكس من الإصدارة 3.6، سافاري من الإصدارة 5.1 وأوبرا من الإصدارة 11.1.(Web Open Font Format 2.0 (WOFF2: مدعوم فقط في كروم من الإصدارة 36.0، فيرفكس من الإصدارة 35.0، وأوبرا من الإصدارة 26.0.(Embedded Open Type Font (EOT: متاح خصيصًا لإنترنت إكسبلورر 6.0 وما يليه.صيغة Web Open Font Format هي الصيغة المفضلة نظرًا لأن الخطوط تٌضغط فيها لتستهلك مساحة أقل من الاتّصال المتاح لك وتحتوي على بيانات وصفية إضافية. ولكن للأسف فإنها ليست دائمًا متاحة للتحميل. فإذا وجدت صعوبة بالعثور على هذه الصيغة، يمكنك استخدام صيغ TrueType وOpenType المتاحة بشكل أكبر للتحميل كما أنها اختيارجيد أيضًا. رفع خطوطك على خادوم الويبحين تجد الخط الذي تريد استخدامه وتتبع إرشادات مصدر الخط لتحميل الملف، فقد حان الوقت إذن لرفعه إلى خادوم الويب الخاص بك. وقبل أن تفعل ذلك، تذكر أن تحتفظ بنسخة احتياطية من موقعك بالكامل قبل إجراء أي تعديلات. من المستحسن إضافة الخط إلى المجلد الذي يحوي قالبك، والذي يمكن أن تجده في المسار: wp-content > themes > your-theme حيث your-theme هو اسم قالبك. يمكنك أيضًا إذا أردت إضافة مجلد Fonts ليحتوي خطوطك حتى تنظم حاجياتك، خاصة إذا كنت تخطط لإضافة أكثر من خط واحد. فك ضغط الملف المضغوط وارفع المحتويات إلى مجلد القالب الخاص بك عن طريق لوحة التحكم. عبر النّقر على زر File Manager تحت Files في الصفحة الرئيسية للوحة التحكم. وغالبًا ستظهر لك نافذة منبثقة، فحينها ستختار مكان موقعك وبعدها تضغط زر الذهاب Go. انتقل إلى مجلد القالب الخاص بك واضغط زر الرفع Upload في أعلى الصفحة. يمكنك ترك صلاحيات الملف 644 ولن تواجه مشاكل غالبا. ولكن إذا واجهتك مشكلة صلاحية، فجرب حذف الملفات ثم إعادة رفعها مجددا بصلاحيات مختلفة. اضغط على زر اختيار الملف Choose file في صفحة رفع الملفات واختر ملفات الخط من حاسوبك. عندما تفتحها، فإن عملية الرفع ستبدأ تلقائيًا دون ضغط زر إضافي على هذه الصفحة. لا يهم المكان الذي تضع فيه ملف الخطوط، بل ستحتاج لتتذكر مساره. وستجده مكتوبًا في صفحة رفع الملفات بالبنط العريض بعد جملة Select files to upload to. إضافة خطوطك إلى القالبلإظهار خطوطك المرفوعة في قالبك، ستحتاج لاستدعائها في ملف style.css الخاص بالقالب، حيث يمكنك العثور عليه في: wp-content > themes > yourtheme في لوحة التحكم، اختر الملف ثم اضغط زر التعديل في أعلى الصفحة. إذا لم تكن قد منعت النوافذ المنبثقة مسبقًا، ستظهر لك نافذة منبثقة، في هذه الحالة اضغط على Go في الأسفل. انسخ النص البرمجي بالأسفل إلى الملف، ويفضل لصقه في الجزء المُخصّص لاستدعاء الخطوط. تأكد أن هناك سطرًا فاصلًا بين كل جزء من أجزاءئ النّص البرمجي في الملف. @font-face { font-family: FontName; src: url(public_html/your-site/wp-content/themes/your-theme/fonts/FontName-Regular.ttf); font-weight: normal; }لا تنس استبدال FontName باسم الخط الذي اخترته، وعدّل في الشيفرة البرمجية لتغيير مسار ملفات الخطوط إلى المسار الصحيح. أضف نفس شيفرة CSS مجددًا لتعريف النمط السميك، المائل، والعناوين الرئيسية للخطوط وما شابه، وتأكد من تغيير اسم الخط ومسار الملف بشكل صحيح. وفي النهاية، حدّد كيفية استخدام خطك ببعض النصوص الإضافية من CSS مثل المثال بالأسفل: p { font-family: FontName; } في هذا المثال، كل نصوص الفقرات (الموسومة بوسم p) ستستخدم الخط الجديد. حين تنتهي من تعديل النص البرمجي إلى اختياراتك الخاصة وتحفظ الملف، سيظهر الخط الجديد على موقعك. خاتمةمع هذه التعليمات، يجب أن تكون قادرًا على إضافة خطوط جديدة إلى القالب الخاص بك دون أي مشاكل. ومع ذلك، هناك العديد من الإضافات التي يمكنها مساعدتك على إضافة خطوط دون الحاجة إلى أي برمجة إذا أردت حلًا أسهل. لمزيد من المعلومات عن استخدام الخطوط في ووردبريس، اقرأ الدليل التالي: اللعب بالخطوط. ترجمة -وبتصرف- للمقال: Adding Custom Fonts to WordPress with @Font-Face and CSS3 لصاحبه: Jenni McKinnon.
  2. عادة ما تستخدم الصور لزيادة قبول المقالات ووضوحها، ولكن بالرغم من انتشارها الواسع، فقد أُهملت صفحة المرفق للأسف، وصفحة المرفق هي صفحة مخصصة لمرفق بسيط، صورة مثلًا. لا تخصص العديد من القوالب صفحة للمرفق، مما يعني أن موقعك ومستخدميك يفتقدون مصدر مهم للمعلومات، وإضافة جيدة لـ SEO. في هذا المقال سنشرح صفحة المرفق مع كيفية إنشاءها. ما هو المرفق؟في ووردبريس المرفق هو ملف مرفوع على الموقع، قد يكون صورة، ملف مضغوط، فيلم أو ملف PDF. وتُخزن المرفقات في جدول المقالات بقاعدة بيانات الموقع، أي في نفس المكان الذي تُخزن فيه المقالات والصفحات. في الواقع، المرفقات هي مقالات من نوع مختلف – وهو "مرفق”. وهذه الطريقة في التخزين صُممت لتسهيل النفاذ والبحث، مثمرة عن تطوير أسهل وتقدم أسرع. ما هي صفحة المرفق؟صفحة المرفق هي صفحة منفردة. مصطلح الصفحة المنفردة هو مصطلح شامل، يتضمن أنواع مختلفة مثل صفحة المقال المفرد وصفحات المقال المنفرد المُخَصّص. وبما أن المرفق عبارة عن مقال، فهو أيضًا له صفحة منفردة، وتدعى صفحة المرفق. الصفحة المنفردة الخاصة بك هي صفحة مُخَصّصة لمقالك، وتعرض العنوان، المحتوى، البيانات الوصفية، التعليقات وما شابه. بالمثل، لا بد أن تكون صفحة المرفق مُخَصّصة للمرفق المعروض. أي لو كان المرفق صورة فيجب أن تحتوي الصفحة على العنوان، الصورة، والوصف، وقد تتضمن التعليقات ومعلومات أخرى عن الصورة. كيف تُعرض صفحة المرفق؟تستخدم كل صفحة في موقع ووردبريس ملف للقالب في عرض محتواها. و يمكنك مطالعة الهرم التسلسلي للقوالب لتحدد أي ملف يُستخدم في العرض. يُدعى الملف المستخدم لعرض صفحة المرفق في القالب attachment.php. قوالب كثيرة تتجاهل هذا الملف، وتستخدم الملف البديل وهو single.php. هذا في حد ذاته ليس بمشكلة، فكثير من صفحات المقال المنفرد مبنية بشكل يدعم العرض الجيد للمرفقات بدون أي نص برمجي إضافي. بعض الصفحات المنفردة تستخدم جمل الشروط "if-else"، التي تحدد كيفية ظهور الصفحة المنفردة في حالة عرض مرفق. للأسف، لا يهتم مطوري القوالب بتصميم صفحة المرفق، إذ أنهم عادة ما يكتفون بتصميم صفحة المقالة المنفردة، مما يثمر عن نتائج غير مستحبة: هذا مثال توضيحي لعرض صفحة المرفق في قالب X الغني عن التعريف. كما ترى فإنه لا يوضح أي معلومات عن الصورة ويعرضها كصورة مصغرة، بالرغم من أن الصورة كبيرة جدًا في الواقع. بالإضافة إلى فاصل مزدوج نتيجة لجزء فارغ لعدم وجوده في قسم المعلومات التفصيلية. يمكن لمطوري القوالب أداء أفضل من ذلك بتخصيص صفحات المرفق بحيث تعرض روابط إلى الصور التالية والسابقة، ومعلومات تفصيلية متعلقة بالصورة وهكذا دواليك. انظر إلى المثال الموضح من موقعي الخاص الذي يستخدم قالب Twenty Fifteen، القالب الافتراضي لووردبريس. ستجد أن الصورة معروضة مع الوصف المناسب أسفلها. وهي معروضة بأكبر مساحة تتناسب مع مقاييس الصفحة والأبعاد الأصلية مذكورة ضمن المعلومات التفصيلية. وهناك أيضًا جزء غير ظاهر في المثال هو استمارة التعليق ورابط إلى المقال الذي نشرت فيه الصورة. هذا أفضل بكثير! كيف أصل إلى صفحة المرفق؟أسهل طريق للوصول إلى صفحة المرفق هو الذهاب إلى قسم الوسائط في لوحة التحكم، ثم اختيار الصورة التي تريدها، وستجد خيار مشاهدة صفحة المرفق "View attachment page” تحت عنوان الصورة. يمكنك أيضًا استنتاج رابط الصفحة بسهولة إذا كنت تعلم رابط المقال المرفق إليه، ويستخدم موقعك روابط دائمة واضحة. فمثلًا إذا كان رابط المقال هو "http://mywebsite.com/my-post/” واسم ملف الصورة شيء مثل "my-image.jpg”، فمن المحتمل أن يكون رابط صفحة المرفق للصورة هو "http://mywebsite.com/my-post/my-image/”. كيف تنشء صفحة مرفقسنستخدم في مثالنا هذا قالب Hueman المجاني، قالب رائع لكن ينقصه عرض لطيف لصفحة المرفق. ملف صفحة المرفقاتسنبدأ بإنشاء قالب فرعي قبل إجراء أي تعديلات. وهذا سيكون صعبًا بعض الشيء لإنك ستحتاج لنسخ ملفات قالبك الحالي كيفما أمكن للتأكد من أن قالبك الجديد مماثل في الرؤية مع القالب الرئيسي. وتعتمد صعوبة أو سهولة هذه الخطوة على وضوح النص البرمجي للقالب الخاص بك. حيث توجد قوالب عديدة صعب قراءة نصها البرمجي، مما يؤثر على سهولة عملية التعديل. بدايةً، أنشء ملف attachment.php في قالبك الفرعي. ويمكنك التأكد من هذه الخطوة بزيارة صفحة المرفق. يجب أن تكون بيضاء، حيث أن الملف نفسه فارغ. ثم انسخ محتويات ملف single.php بالكامل من القالب الرئيسي إلى ملف attachment.php الجديد. وعندئذ عندما تفتح صفحة المرفق مجددًا فيجب أن تجدها عادت كما كانت سابقًا إذ أنها تستخدم نفس الكود (لا تنس أن ووردبريس يستخدم ملف صفحة المقال المنفرد في حالة عدم وجود ملف صفحة المرفق)، فقط من ملف مختلف. تخصيص صفحة المرفقنريد أن نتجنب التعديلات غير الضرورية في الملف. وستجد بالنظر إلى النص البرمجي أن ما نحتاج إلى تغييره هو ما يقع ضمن عنصر post-inner. فقط. وهذا يعني، في النسخة التي نعمل عليها، كل شيء يقع ضمن السطور 12-27 في هذا الملف. وهذا ما صار إليه الآن: <h1 class="post-title"><?php the_title(); ?></h1> <p class="post-byline"> <?php _e('by','hueman'); ?> <?php the_author_posts_link(); ?> &middot; <?php the_time(get_option('date_format')); ?> </p> <?php if( get_post_format() ) { get_template_part('inc/post-formats'); } ?> <div class="clear"></div> <div class="entry"> <div class="entry-inner"> <?php the_content(); ?> <?php wp_link_pages(array('before'=>'<div class="post-pages">'.__('Pages:','hueman'),'after'=>'</div>')); ?> </div> <div class="clear"></div> </div><!--/.entry-->والآن سننشء التصميم الذي يُظهر الصورة بالأعلى، يليها العنوان والوصف. دعنا نتخلص من قسم البيانات الوصفية بالإضافة إلى جزء أنواع المقالات إذ لا نحتاجهم. <?php echo wp_get_attachment_image( get_the_ID(), 'large' ); ?> <h1 class="post-title"><?php the_title(); ?></h1> <div class="entry"> <div class="entry-inner"> <?php the_content(); ?> </div> <div class="clear"></div> </div><!--/.entry-->يوضح النص البرمجي بالأعلى المحتوى المُعدل الذي يقع ما بين وسميّ البداية والنهاية لعنصر post-inner. وقد استخدمت وظيفة ()wp_get_attachment_image لاستحضار الصورة بتوفير رقم ID للمقال الحالي – لا تنس أنه أيضًا رقم ID للصورة حيث أننا في صفحة المرفق – واخترت الحجم الكبير للصورة. والآن أصبح لدينا العنوان والوصف بنفس تنسيق القالب الأصلي. وحذفت قسم البيانات الوصفية وترقيم الصفحات للمقال، الآن أصبح أفضل بكثير: يمكننا الاكتفاء بهذا، لكني أريد أن أعرض فكرة لإضافة تفاصيل أكثر إلى الصفحة، دعنا نضيف روابط للأحجام المختلفة من الصورة لتسهيل التحميل. عن طريق وظيفة ()wp_get_attachment_metadata التي تتيح عرض قائمة لكل أحجام الصورة وتصفحها في حلقة Loop. وهذا مثال لكتابتها: <div class="entry"> <div class="entry-inner"> <?php the_content(); ?> <p class='resolutions'> Downloads: <?php $images = array(); $image_sizes = get_intermediate_image_sizes(); array_unshift( $image_sizes, 'full' ); foreach( $image_sizes as $image_size ) { $image = wp_get_attachment_image_src( get_the_ID(), $image_size ); $name = $image_size . ' (' . $image[1] . 'x' . $image[2] . ')'; $images[] = '<a href="' . $image[0] . '">' . $name . '</a>'; } echo implode( ' | ', $images ); ?> </p> </div> <div class="clear"></div> </div><!--/.entry-->ترى أنني عدّلت محتوى جزئية entry.، حيث أضفت عنصرًا جديدًا لعرض الأحجام. وفيه استخرجت أحجام الصورة المعرّفة باستخدام ()get_intermediate_image_sizes. وما تبقى هو مجرد حلقة بسيطة، تدور عبر أحجام الصورة مع استخراج الأبعاد بالإضافة إلى الرابط لكل صورة. وقد استخدمت هذه البيانات لإنشاء بعض الروابط وكتابتها في النهاية. الختامصفحات المرفق رائعة لأنها توفر لك فرصة لتقدم شيئًا قيمًا للقراء: معلومات أكثر عن صورك، خواطرك عنها، وربما روابط التحميل أو حتى معلومات عن الكاميرا والتقنيات التي استُخدمت في إلتقاطها. هذه المعلومات الغنية لها تقييم عالٍ على جوجل إذا استُخدمت بشكل دائم وصحيح. فهي أكثر من مجرد خاصية جذابة. إذا لم تمتلك صفحة مرفق بعد، فإني أقترح عليك إتباع هذا المقال وإنشاءها الآن. يمكنك أيضًا تحميل قالب Hueman الفرعي الذي أنشأته في هذا المقال، بالرغم من أنه سيكون ذا فائدة فقط إذا استخدمت قالب Hueman بالفعل كقالب رئيسي. هل وجدت هذا المقال مفيدًا؟ سنسعد بمعرفة آرائكم والرد على استفساراتكم في التعليقات. مترجم بتصرف من مقال Creating an Advanced Attachment Page in WordPress لصاحبه Daniel Pataki.
  3. صفحات لوحة التحكم هي روح وقلب الإضافات، ويسهل أن تفترض أنها عبارة عن استمارات متقدمة الغرض منها لتجميع البيانات من المستخدم. ولكن في الواقع، إن صفحات لوحة التحكم هي المكان الأفضل للترحيب بالمستخدمين الجدد، توفير المعلومات عن الإضافة، وعرض التفاصيل المطلوبة للدعم والوثائق. في هذا المقال القصير سنلقي نظرة على كيفية إضافة هذه الصفحات إلى لوحة تحكم ووردبريس. ويمكنك الاستعانة بهذه المعلومات بالإضافة لدروس أخرى لإنشاء صفحات مبوبة، استخدام خاصية الـ Ajax، وهكذا دواليك. مكونات صفحة لوحة التحكمهناك مكونين أو ثلاثة لصفحة لوحة التحكم، حسب الوظيفة التي تبني عليها: عنصر قائمة – رئيسي أو فرعي.محتوى الصفحة.برمجة وظيفة الاستمارات – إذا كانت مطلوبة.لن نتحدث في هذا المقال عن الاستمارات ووظيفتها، هذا موضوع آخر. إنما سنكتفي الآن بكيفية إنشاء الصفحات نفسها. القوائم الرئيسية والفرعيةهناك نوعين من عناصر القائمة: رئيسي وفرعي. وأرشح لك –كما يقول Wordpress Codex– أن تدرس ما إذا كانت إضافتك تحتاج إلى عنصر قائمة رئيسي فعلًا. حيث توجد العديد من الإضافات التي تضيف عناصر قائمة رئيسية، مما يؤدي إلى إزدحام لوحة التحكم. ومثال على ذلك هو إضافة WordTwit، المسئولة عن إنشاء تغريدات بالمحتوى الجديد. وهي إضافة ممتازة، إلا أنها تضيف عنصر قائمة رئيسي دون الحاجة إليه. هذا غير ضروري على الإطلاق، وكان من الأفضل الاكتفاء بعنصر فرعي في قائمة الإعدادات. بينما بعض الإضافات الأخرى مثل WooCommerce ،bbPress، وغيرها تضيف عناصر القائمة الرئيسية التي لها فائدة بالفعل، هذا يعتمد فقط على كيفية تفاعل المستخدمين مع منتجك. نصيحة عن خبرة: إذا كان المستخدم يحتاج للتعامل مع إضافتك بشكل يومي أو مستمر فاستخدم عنصر قائمة رئيسي. أما إذا كانت صفحتك في لوحة التحكم لغرض الإعدادات فقط، فسيكون إدراج عنصر فرعي في قائمة الإعدادات كافيًا. إنشاء صفحة لوحة تحكم رئيسيةأولًا نبدأ بإنشاء عنصر قائمة عن طريق الدالة ()add_menu_page. وترى هنا مثالًا لها مع الشرح: add_action( 'admin_menu', 'my_admin_menu' ); function my_admin_menu() { add_menu_page( 'My Top Level Menu Example', 'Top Level Menu', 'manage_options', 'myplugin/myplugin-admin-page.php', 'myplguin_admin_page', 'dashicons-tickets', 6 ); }تأخذ الدالة سبع معطيات: عنوان الصفحة، الذي يعرّف وسم العنوان ويظهر في عنوان صفحة الانترنت في متصفح الانترنت وليس على الشاشة. العنوان الذي يظهر في القائمة.الصلاحيات المطلوبة للدخول إلى القائمة، يمكن استخدامه لحصر الصفحة على المدراء، أو المحررين، أو المؤلفين."الاسم اللطيف" أو slug للقائمة، وهو الذي يظهر في رابط الصفحة.الوظيفة، التي تتضمن محتوى الصفحة.رابط الأيقونة. ويقبل العديد من الصيغ. فإذا وُضع رابط صورة سوف تستخدم هذه الصورة. بإمكانك استخدام Dashicons، المبنية داخل ووردبريس، أو حتى استخدام ملف SVG.الترتيب في القائمة. وبما أن الوظيفة تختص بالمقالات، فقد اخترنا أن نضع عنصر القائمة بعدها مباشرة، أي في السادس. ويمكنك التعرف على ترتيب العناصر من Wordpress Codex.والآن الخطوة التالية هي إنشاء محتوى الصفحات. كل ما تحتاجه هو تعريف الدالة التي حددتها في المُعطى الخامس وكتابة بعض المحتوى. وهذا مثال بسيط لتبدأ به: function myplguin_admin_page(){ ?> <div class="wrap"> <h2>Welcome To My Plugin</h2> </div> <?php }إنشاء صفحة لوحة تحكم فرعيةهناك بعض الوظائف التي يمكن استخدامها لإنشاء صفحات فرعية. والدالة العامة ()add_submenu_page تمكنك من إنشاء صفحات فرعية في أي مكان، ولكن كل الصفحات الرئيسية لها وظائفها الخاصة لإضافة صفحات فرعية إليها: لإضافة صفحات فرعية إلى قسم المقالات استخدم add_posts_page.لإضافة صفحات فرعية إلى قسم الصفحات استخدم add_pages_page.لإضافة صفحات فرعية إلى قسم الوسائط استخدم add_media_page.لإضافة صفحات فرعية إلى قسم الروابط استخدم add_links_page.لإضافة صفحات فرعية إلى قسم التعليقات استخدم add_comments_page.لإضافة صفحات فرعية إلى قسم المظهر استخدم add_theme_page.لإضافة صفحات فرعية إلى قسم الإضافات استخدم add_plugin_page.لإضافة صفحات فرعية إلى قسم المستخدمين استخدم add_users_page.لإضافة صفحات فرعية إلى قسم الأدوات استخدم add_management_page.لإضافة صفحات فرعية إلى قسم الإعدادات استخدم add_options_page.كل من الوظائف السابقة تتبع نفس الصياغة: add_comments_page( $page_title, $menu_title, $capability, $menu_slug, $function); والمُعطىات شبيهة بتلك المذكورة في المثال السابق. ربما تود إضافة عنصر فرعي إلى عنصر قائمتك الرئيسي، وفي هذه الحالة لن تكون الوظائف السابقة ذات نفع لك. بل ستستخدم الدالة ()add_submenu_page، وهنا سنضيف عنصر فرعي إلى قائمتنا الرئيسية التي أعددناها سابقًا: add_action( 'admin_menu', 'my_admin_menu' ); function my_admin_menu() { add_menu_page( 'My Top Level Menu Example', 'Top Level Menu', 'manage_options', 'myplugin/myplugin-admin-page.php', 'myplguin_admin_page', 'dashicons-tickets', 6 ); add_submenu_page( 'myplugin/myplugin-admin-page.php', 'My Sub Level Menu Example', 'Sub Level Menu', 'manage_options', 'myplugin/myplugin-admin-sub-page.php', 'myplguin_admin_sub_page' ); }كما يمكنك أن ترى هذه الدالة مشابهة للدوال المذكورة سابقًا، باستثناء المُعطى الأول الذي يحدد الاسم اللطيف المستخدم في رابط الصفحة الرئيسية، وهو في حالتنا هذه: myplugin/myplugin-admin-page.php. الختامكما ترى، فإن إضافة عناصر إلى القائمة وصفحات محتوى سهل للغاية. الصعوبة تبدأ بعد هذه المرحلة، حيث نختار محتوى الصفحات، كيف نرتبه، استخدام CSS وجافاسكريبت لإظهار المحتوى بتنسيق رائع، التأكد من أن الاستمارات آمنة وموثقة وهكذا دواليك، هذا كله سيتم تغطيته في دروس مستقبلية. هدف هذا الدرس هو فهم أساسيات إنشاء قوائم وصفحات لوحة التحكم لكي تلجأ إليها وقت الحاجة. وسنتطرق إلى حالات معينة في استخدام هذه الخصائص قريبًا. هل هناك أي شيء تريد إضافته إلى المقالة؟ أو تريد الاستفسار عنه؟ سنسعد بالرد عليكم في التعليقات. مترجم بتصرف من مقال A Quick and Easy Guide To Creating WordPress Admin Pages لصاحبه Daniel Pataki. حقوق الصورة البارزة: Car vector designed by Freepik.
  4. كمطور، لابد أنك تفخر بمنتجاتك التي أمضيت ساعات عديدة على تطويرها، وتريد لها النجاح. ولكن ماذا لو لم تجد النتائج التي كنت تأملها بعد كل المجهود الذي بذلته؟ ماذا لو لم يشترِ أحد منتجك؟ هذا سيكون مُحبطًا بالطبع. لكن قبل أن تتخلى عن طموحاتك وأحلامك، اسأل نفسك، هل فعلت كل ما في وُسعك لتسويق منتجك بكفاءة؟ إذا أثار السؤال العديد من علامات الاستفهام لديك، فالإجابة حتمًا هي "لا". بناء خطة تسويق جيدة من شأنها أن تلعب دورًا كبيرًا أيّا كان المُنتج الذي ترغب في بيعه. وفي حالة مجتمع ووردبريس التنافسي، فإنها ضرورية للغاية. قبل أن تفقد الأمل من إمكانية نجاح منتجك، جرّب هذه النصائح التي أفادت مطورين آخرين، فقد تكون دليلك إلى خطة تسويقية ممتازة. قدّم إصدارًا مجّانيًاعادة ما ينفر الناس من تجربة أشياء جديدة، ويزداد الأمر سوءًا إن لم يكونوا قد سمعوا بصاحبها من قبل. لذا، إذ كنت مطورًا جديدًا على السّاحة وكنت بصدد إطلاق منتجك الأول، فمن المستحسن أن تقدم "شيئًا" مجّانيًا في البداية، هذا الأمر أعطى نتائج جيّدة مع جايسون هولوتّ. قدّم هولوتّ إصدارين من إضافته، واحد مجاني والآخر بمقابل مادي. لم يحتوِ الإصدار المجاني على خصائص كثيرة لكنه كان وسيلة لتجربة الإضافة. أثبت نموذج التجربة قبل الشراء نجاحه لفترة طويلة ومهّد للعديد من المطورين انطلاقة جيدة في السوق. ركّز على مجال معينوفقًا لتشارلي باتل، مؤسس Gabfire Themes فإنّ إحدى أفضل الخطط التسويقية هي التركيز على مجال بعينه. هذه الخطة ساعدت Gabfire Themes على إثبات كفاءتها في سوق التّصميم المُوجّه للصحافة والمجلات بشكل سريع، بالإضافة إلى بناء مجتمع وفيّ لعلامتهم التجارية. التركيز على مجال بعينه قد يكون صعبًا، خاصة إذا كنت تمتلك العديد من الأفكار وتريد تنفيذ جميعها. لكنها فكرة تستحق التّجربة. ينصح باتل في هذا الموضوع بأن تبحث عن نقاط قوتك وتركّز على استغلالها وتقويتها، ويطرح مثالًا لكيفية التركيز في مجال معين: الأمر كله يعتمد على الكيف أكثر من الكمّ، إذ يقول باتل أنهم لا يعملون على توفير عدد معين من القوالب شهريًا، ولا ينوون تقديم المئات من القوالب فقط لامتلاك مثل هذا العدد، بل يقدمون قوالبهم بشكل يمكّن المستخدم من تعديلها لتناسب احتياجاته الشخصية، فالأكثر لا يعني الأفضل بالضرورة. توفير محتوى وافٍعند التعريف بمنتجك، يجب أن توفر كافة المعلومات الممكنة عنه في صفحة المنتج على موقع ووردبريس، شاملًا صفحات مثل الأسئلة الشائعة واللقطات screenshots. بالإضافة إلى توفير مُحتوى مُفيد للزّوّار. حيث يجب أن توفّر في موقعك مدونة، صفحة للأسئلة الشائعة، أمثلة لاستخدام الإضافة، دراسات تحليلية، وما شابه وفقًا لنصيحة هولوتّ. فكلما وفرت محتوى أكثر فائدة، ظهرت في صورة أكثر احترافيّة. توفير المحتوى لموقعك سيشجع الناس على معاودة الزيادة مجددًا. ويذكر باتل أنه من الممكن استغلال هذه الميزة في إنشاء "محتوى موسمي"، مثلًا نشرة بريدية شهرية ستكون طريقة جيدة لإطلاع المستخدمين على آخر الأخبار، وإعلامهم بالتحديثات، وتوفير استبيان لمعرفة الآراء. المحتوى هو طريق الويب. يُحدّد كيف يعثر الناس على موقعك ويهتمون بعروضك. ويرشد محركات البحث إليك. هذه أسباب كافية للاهتمام بخطة للمحتوى تتضمن مقالات أصيلة ذات جودة عالية. جرب تنفيذها في مدونتك ويمكنك كتابة تدوينات دعائية في المدونات الأخرى للوصول إلى الاستفادة القصوى. توفير الدعملن تتخيل مدى أهمية هذه النقطة. هناك العديد من مصممي القوالب والإضافات ممّن ينشئون منتجًا ثم يمضون في طريقهم. ولكن هذا يقود إلى الفشل الذريع. في سوق القوالب والإضافات الخاصّة، يمكن أن يبني الدعم الفنّي سمعتك أو أن يدمرها. يذكر باتل فخرهم بمستوى دعمهم للمستخدمين، إذ يتفق المعظم على أن الدعم المتوفر لهم يفوق تكلفة المنتج نفسه. ويمكنك توفير الدعم عن طريق تخصيص وقت للرد على البريد الإلكتروني وتذاكر الدعم، تقديم تحديثات دورية للمنتج، وحتى التواجد على الأقل من أجل مستخدميك، فإن الدعم هو جزء من منتجك الذي تبيعه. خطّط لانطلاقة تسويقية للمنتجعندما يكون منتجك على وشك الانطلاق، فمن الهام أن تركز جهودك حول موعد إطلاقه. بالنسبة لهوارد يه، المؤسس الشريك لـ ContactUs.com، التي أطلقت إضافة Contact Form by ContactUs.com لووردبريس والذي تمّ تحميلها أكثر من 89,000 مرّة، هذا يعني تنفيذ "خطة تسويقية لزيادة عدد مرات تحميل الإضافة". ويقول هوارد أنّه يحرص على الإشارة إلى أي مراجعات أو تدوينات من أشخاص آخرين عن الإضافة على صفحة الإضافة الرسمية. ولنفعل هذا بكفاءة، فإن فريق هوارد يُسهّل المهمّة عبر توفير وصف للإضافة، إضافة إلى صور/لقطات والأسئلة الشائعة. وفوق ذلك فهم يأخذون بالحسبان كل مراجعة تصلهم، بما فيها السلبية منها. وهذا يدخل ضمن جزئية "تقديم الدعم" التي تحدثنا عنها سابقًا ويثبت أنك مستعد للاستماع إلى ردود الفعل، حتى لو كانت غير مشجعة دومًا. استخدام الشبكات الاجتماعيةهذا يٌفترض أن يكون بديهيًا ولكني عادة ما أقابل مطورين أقصى ما وصلوا إليه في التسويق عن طريق الشبكات الاجتماعية هو إنشاء حساب تويتر لإضافتهم. وهذا خطأ فظيع، خاصة إذا أخذت في الاعتبار أنك توفر منتج متاحًا على الإنترنت فقط. من الهام للمطورين المبتدئ منهم والخبير الظهور، والأهم التفاعل، على الشبكات الاجتماعية. مثلًا Elegent themes لهم أداء جيد على تويتر وفيس بوك، وأيضًا Yoast مثال جيد آخر على التفاعل الاجتماعي. المشاركة في الشبكات الاجتماعية بانتظام توسّع جمهورك أنت ومنتجاتك. بالإضافة إلى حس الانفتاح والدعم. كلما تعددت وسائل تواصل شركتك مع المستخدمين، صرت أفضل. لا يعني ذلك أنك تحتاج للمشاركة في كل الشبكات الاجتماعية. فمن الأفضل أن تختار الشبكة الاجتماعية المناسبة وتلتزم بها بدلًا من التشتت بين الشبكات الاجتماعية المختلفة. خاتمةالتسويق هو خطوة كثيرًا ما يغفل عنها في تطوير إضافات وقوالب ووردبريس. وهذا خاطئ ستعرف إضافتك زيادة مُعتبرة من حيث مرّات التّحميل (أو المبيعات) لو خصّصت وقتًا أكثر لوضع خطة تسويقية. مترجم بتصرف من مقال How to Market WordPress Plugins and Themes للكاتبة Brenda Barron.
  5. يقوم النّاس بتنصيب مواقع ووردبريس كل يوم. بعضهم يستخدمه كما هو دون تغيير. ببساطة، ينصبون ووردبريس، يهيؤونه، ويستخدمون قالبًا دون أي تعديل فيه. ويبدؤون بالتدوين وهذا كل شيء. والبعض الآخر يفضل تخصيص الأشياء قليلًا. وبينما يمكنك تحقيق الكثير عن طريق استخدام قالب التصميم المناسب واختيار إضافات معينة، ربما يأتي عليك وقت تحتاج فيه للدخول إلى النص البرمجي بنفسك وإضافة بعض السطور. ولكن كيف تفعل ذلك؟ هذا هو السؤال الذي سنستكشف إجابته اليوم. الأمر نسبينعم، هاتان الكلمان هي الإجابة القصيرة لذلك السؤال. لكن هكذا لن تكون المقالة مثيرة للاهتمام، أليس كذلك؟ أفضل طريقة لإضافة نص برمجي مٌخصَّص لووردبريس يعتمد على عدد من العوامل. ولهذا اخترت تقديم خياراتك بصيغة "إذا كان / فافعل". إذا استخدمت قالبًا صُمِّمَ من قِبل شخص آخرفيجب ألّا تضيف نصًا برمجيًا مٌخصَّصًا إلى ملفات ذلك القالب، يقول إريك بويلو (صاحب وكالة برمجية): هذا يبدو مضيعة هائلة للوقت، أليس كذلك؟ إذًا، إذا كان لا يمكنك تعديل الشيفرة مباشرة في ملفات قالب التصميم، فماذا تفعل؟ 1. أنشئ قالبًا فرعيًاوفقًا لبراندون هوارد (مالك لشركة تطوير قوالب ووردبريس)، إنشاء قالب فرعي يسمح لك بإضافة نص برمجي إلى ملف functions.php دون القلق من خسارة التعديلات حين تجري تحديثات نظام ووردبريس أو القالب. بالإضافة إلى ذلك، فإن القوالب الفرعية تساعدك على "استخدام الخطافات hooks الخاصة بووردبريس والقوالب لإضافة النص البرمجي الخاص بك". وبالتالي لن تواجه خطر إعادة الكتابة على تعديلاتك مجددًا. إذا لم تمتلك فكرة جيدة عما يكون القالب الفرعي، دعني أشرح لك. إنه بشكل أساسي عبارة عن قالب فرعي للقالب الرئيسي المُنَصّب. ويمكن إنشاؤه بسهولة. إذ كل ما تحتاج فعله هو الولوج إلى موقعك عن طريق FTP وإنشاء مجلد (قد يكون اسم themename-child مناسبًا) ثم أنشء ملف style.css في ذلك المجلد. هذا الملف سيسحب المعلومات من ملف CSS التابع للقالب الرئيسي. ثم ستحتاج لتفعيل القالب الفرعي في لوحة التحكم. لن أخوض في تفاصيل كيفية فعل ذلك، إذ كتبنا بالفعل مقالًا حول كيف تنشئ القالب الفرعي الخاص بك بشكل متعمق سابقًا، لذا يمكنك قراءته إذا قررت أن هذه هي الطريقة التي تريد إضافة النص البرمجي المُخَصَّص بها. بالطبع، هذا الخيار لا يصلح في جميع الحالات. 2. استخدم إضافةإذا لم تكن مرتاحًا في التّعامل مع الواجهة الخلفية (backend) لووردبريس لكن ما زلت تريد إدخال تعديلات برمجية مٌخصَّصة، يمكنك استخدام إضافة تساعدك على وضع النص البرمجي في أماكن مناسبة على موقعك. وفقًا لسكوت تشاو من مدونة The Blog Starter، استخدام إضافة "سيٌخفِّض بشكل كبير من احتمالية حذف شيء بالخطأ". ولا حاجة لذكر أن مشكلة "تحديث الموقع وخسارة جميع التعديلات" لن تحدث إطلاقًا هنا. يُرشّح تشاو إضافتين خصيصًا. الأولى هي Insert Headers and Footers. هذه الإضافة تساعدك على إدخال النص البرمجي في ترويسة أو ذيل موقعك. وهذا مناسب للأشخاص الذين يريدون إضافة شيء مثل Google Analytics. الإضافة الثانية التي يرشحها هي Global Content Blocks. هذه الإضافة تساعدك على إدخال الشيفرة ضمن المقالات وحفظها كمقتطفات نص برمجي للاستخدام لاحقًا. رشحت ناتاليا كريس، مطورة أخرى تحدثت معها، إضافة أخرى تدعى Code Insert Manager وهي ممتازة لإضافة نصوص برمجية لخدمات مثل Google Analytics, Aweber وGetResponse. لكن مجددًا، قد لا تجد إضافة تستطيع تحقيق تلك المهمة التي تريد فعلها. في هذه الحالة يمكنك.. 3. برمجة إضافةعندما تريد إعادة تصميم موقع ما مع المحافظة على نفس وظائفه السّابقة – أو ببساطة تريد إضافة نص برمجي إلى موقعك – يمكنك برمجة إضافة لتنفيذ ذلك. يقول أدم سميث، مدير قسم التقنية فيMarketing Mojo: موضحًا أن هذا ينطبق غالبًا في حالة استخدام قالب مُصَمَّم من قبل شخص آخر أكثر من إذا كنت من صمّمه من الصفر. عادة ما يصمم سميث الإضافة المٌخصَّصة بحيث تتضمن أنواع المقالات المٌخصَّصة، الاختصارات النصية، تعديلات على إدارة ووردبريس، وتعديلات أخرى يراها مطلوبة. وينتهج هوارد أسلوبًا مماثلًا، حيث يقول: إذا أنشأت قالبك الخاصتحدثنا حتى الآن عما نفعله إذا أردت إضافة نص برمجي مٌخصَّص إلى قالب حملته مجانًا أو بمقابل مادي من على متجر قوالب. ولكن ماذا لو كان القالب من صنعك؟ ما هي أفضل الممارسات لهذه الحالة؟ يذكر بويلو في حالة ما إذا كنت قد أنشأت قالبك من الصفر، "فيجب أن تدخل الشيفرة مباشرة في القالب"، هذا يشكل تأثيرًا إيجابيًا على تطوير سرعة الموقع وكفاءته. فقط التعديل على ملف functions.php التابع للقالب حين تحتاج لإجراء تغييرات سيكون كافيًا. إنشاء إضافة (نعم، مجددًا)نعم، تنطبق هذه الطريقة على كلا الحالتين سواء أكنت تستخدم قالب مُصَمَّمًا من قبل أشخاص آخرين أو صمّمته بنفسك. هناك بعض المزايا لإنشاء إضافة لتلحقها بقالبك الخاص. ليس فقط سهولة تفعيل وإيقاف وظائف معينة للموقع حين تقرر أنك لا تحتاجها، بل أيضًا تعطيك الفرصة للتوسع إلى تطوير الإضافات. يقول بويلو: حسنًا، ما هو أفضل حل؟من جديد، الأمر نسبي. اتفق كل المطورين الذين تحدثت معهم على ذلك. وهذا لا ينفي أن هناك بضع قواعد مجربة وصحيحة. حين تحتاج لإضافة نص برمجي مٌخصَّص إلى موقع ووردبريس، فيجب عليك أن: تستخدم قالبًا فرعيًا عند التعديل على خصائص قالب مُصَمَّم من قبل شخص آخر، أوتستخدم إضافة لإضافة سطور النص البرمجي إلى موقعك، أوتُبرمج إضافات للحصول على مجال أوسع من إضافة الخصائص.هذه الخطة ستساعدك على إنشاء مواقع مُخصَّصة تبقى كما تريد لها أن تكون، بغض النظر عن أي تحديث جديد. خاتمةإن قرأت كامل المقال بتمعّن فستدرك بشكل أفضل كيفية إضافة نصوص برمجية مُخصَّصة إلى موقع ووردبريس الخاص بك وما هي أفضل طريقة بناءً للقيام بذلك اعتمادًا على حالتك الخاصّة. هل سبق لك أن واجهت نفس الوضع؟ هل وجدتَ طريقة مختلفة وأكثر كفاءة؟ شاركنا بها ترجمة -وبتصرف- للمقال What's The Best Way To Add Custom Code To WordPress؟ لكاتبته Brenda Barron. حقوق الصور محفوظة لـ: +Tuts
  6. إحدى المميزات الرئيسية لووردبريس والتي عادة لا يعرف عنها الكثيرون هي أن هناك رتبًا للأعضاء مختلفة الصلاحيات والمستويات. وهي تساعد على التأكد من وصول المستخدمين للأماكن التي يحتاجونها فقط دون العبث بأدوات قد تتسبب بتوقّف الموقع. سنتحدث عنها باختصار في هذا المقال بالإضافة إلى كيفية إنشاء رتب أعضاء مُخصَّصة بنفسك. لقد كانت رتب الأعضاء جزءًا لا يتجزأ من تجربة ووردبريس منذ الإصدارة رقم 2.0. ومع ذلك لا يدرك معظم الناس وجودها، فيمنحون حقوق الإدارة الكاملة لكل شخص يملك وصولًا إلى لوحة التحكم الخاصة بهم (وهذا بالطبع غير مستحب لأسباب عديدة). يأتي ووردبريس مجهزًا بستّ رتب افتراضية: مدير: يملك جميع الخصائص والوظائف الإدارية في الموقع.محرر: يمكنه نشر وإدارة مقالات جميع المستخدمين، بما في ذلك مقالاتهم الخاصة.مؤلف: يمكنه نشر وإدارة مقالاته الخاصة.مساهم: يمكنه كتابة وإدارة مقالاته الخاصة ولكن لا يمكنه نشرها.مشترك: يمكنه فقط إدارة نبذته الخاصة.لِم نستخدم رتب الأعضاء المُخصَّصة؟بالنسبة لمعظم الناس تفي رتب الأعضاء الافتراضية بالمطلوب. ولكن هناك حالات تحتاج فيها لرتبة ذات صلاحيات مختلفة عن الصلاحيات المتاحة في الرتب الافتراضية. وفي هذا المقال سنعرف كيف تنشئ رتب أعضاء مُخصَّصة بنفسك دون الاستعانة بالإضافات. دعنا نلقِ مثالًا من العالم الواقعي. إذ عادة ما أستخدم رتب الأعضاء المُخصَّصة للتأكد من أن عملائي يملكون نفاذًا فقط للأشياء التي يحتاجونها. قد يختلف البعض مع هذا بحجة أنه موقع العميل ويجب أن يملك صلاحيات المدير بصفته المالك. وهذا صحيح إذا كنت ستسلم الموقع إلى العميل ولن تكون مسئولًا عن صيانة الموقع. لكن إذا كنت مسئولًا عن الحفاظ على الموقع قائمًا وفعّالًا طوال اليوم، فهنا أقترح عليك تحديد صلاحيات العميل عن طريق رتبة مُخصَّصة. هكذا أستطيع منح العميل كل شيء يحتاجه للإبقاء على موقعه نشطًا، مثل إضافة المحتوى، وربما إضافة فعاليات أو أي شيء يريدون فعله. ولكن ما لا يستطيعون فعله هي الأشياء التي قد تتسبب بسقوط الموقع أو تعطيل وظيفته. إذ أحظر صلاحيات إضافة أو حذف الإضافات والقوالب، وتحديث البنية الأساسية، وكل الوظائف التي تقع ضمن مجالي في صيانة الموقع. وظائف ووردبريس الأساسيةلإدارة الرتب والصلاحية بكفاءة، هناك خمس وظائف بسيطة: ()add_role: تتيح لك إضافة رتبة مُخصَّصة.()remove_role: تتيح لك حذف رتبة مُخصَّصة.()add_cap: تتيح لك إضافة صلاحيات جديدة إلى الرتبة.()remove_cap: تتيح لك حذف صلاحيات من الرتبة.()get_role: تعرض لك معلومات عن رتبة ما بالإضافة إلى الصلاحيات المُلحقة بها.سنستخدم فقط وظيفة ()add_role في هذا المقال عند إنشاء رتبة مُخصَّصة لعميلنا الخيالي. تحديد صلاحيات رتبة العضوقبل أن نبدأ في كتابة النص البرمجي علينا أن نجهز خطة، لأنه ليس من المستحب البداية في البرمجة دون خطط. أولًا، نحتاج لتسمية رتبة العضو خاصتنا. ويمكننا تسميتها ببساطة "عميل Client”. ثانيًا، نحتاج لتحديد صلاحيات رتبة "عميل". هناك حوالي 50 صلاحية مختلفة للاختيار منها في النسخة الافتراضية من ووردبريس (ويزداد العدد عند إنشاء الإضافات). هدفنا هو أن يستطيع العميل فعل الآتي: إنشاء المقالات.تعديل المقالات.تعديل مقالات الآخرين.إدارة التصنيفات.تعديل الصفحات.وفي الوقت ذاته لا نريده أن يستطيع فعل الآتي: تعديل القوالب.إضافة أو حذف الإضافات.تحديث البنية الأساسية.كتابة النص البرمجيسنضيف هذا النص البرمجي إلى ملف functions.php التابع لقالبنا الفعّال. لذا دعنا نبدأ بإضافة الآتي: // إضافة رتبة عضو مُخصَّصة $result = add_role( 'client', __('عميل' ), array( ) );هكذا أنشأت بإضافة ذلك النص البرمجي رتبة عضو جديدة (يمكنك العثور عليها في القائمة المنسدلة في صفحة أضف عضو جديد). لكن هذه الرتبة لا تمتلك صلاحيات بعد. لذا فالخطوة التالية بالطبع ستكون إضافة صلاحيات تفي بالمتطلبات التي ذكرناها سابقًا. فقط أضف نص المتتالية array إلى النص السابق الذي قمت بإدخاله في ملف functions.php. // إضافة رتبة عضو مُخصَّصة $result = add_role( 'client', __('عميل' ), array( 'read' => true, // تسمح بصلاحية القراءة 'edit_posts' => true, // تسمح للمستخدم بتعديل مقالاته الخاصة 'edit_pages' => true, // تسمح للمستخدم بتعديل الصفحات 'edit_others_posts' => true, // تسمح للمستخدم بتعديل مقالات الآخرين 'create_posts' => true, // تسمح للمستخدم بإنشاء مقالات جديدة 'manage_categories' => true, // تسمح للمستخدم بإدارة التصنيفات 'publish_posts' => true, // تسمح للمستخدم بنشر المقالات، أو ستُحفظ كمسودّات ) ); هذا سيعطينا الصلاحيات التي تمَكّن المستخدم من فعل ما يحتاجه، ولكننا ما زلنا بحاجة لحظر الصلاحيات التي قد تؤدي إلى سقوط الموقع. لذا سنضيف النص التالي: // إضافة رتبة عضو مُخصَّصة $result = add_role( 'client', __('عميل' ), array( 'read' => true, // تسمح بصلاحية القراءة 'edit_posts' => true, // تسمح للمستخدم بتعديل مقالاته الخاصة 'edit_pages' => true, // تسمح للمستخدم بتعديل الصفحات 'edit_others_posts' => true, // تسمح للمستخدم بتعديل مقالات الآخرين 'create_posts' => true, // تسمح للمستخدم بإنشاء مقالات جديدة 'manage_categories' => true, // تسمح للمستخدم بإدارة التصنيفات 'publish_posts' => true, // تسمح للمستخدم بنشر المقالات، أو ستبقى كمسودّات 'edit_themes' => false, // تمنع المستخدم من تعديل القوالب 'install_plugins' => false, // لا يستطيع المستخدم تنصيب إضافات جديدة 'update_plugin' => false, // لا يستطيع المستخدم تحديث الإضافات 'update_core' => false // لا يستطيع المستخدم تحديث البنية الأساسية ) );كيف تتأكد أن رتبة العضو قد أضيفت بشكل صحيحللتأكد من أن رتبة العضو تعمل جيدًا، سننشئ عضوًا جديدًا بالرتبة المذكورة، ثم نسجل الدخول إلى العضوية الجديدة ونلاحظ التغير الحاصل في الأدوات المتاحة في لوحة التحكم، وهذا بناءً على أيّ الصلاحيات منحتها وأيّهم منعتها. وتظهر الصورة بالأسفل ما يجب أن تراه إذا أضفت رتبة العضو كما فعلنا سابقًا. كما ترى، الأدوات المتاحة لهذا العضو قد قلت كثيرًا نتيجة للصلاحيات التي تم منحها ومنعها. يمكنك أن ترتاح الآن كمطور/مدير للموقع أنك لن تستقبل رسالة من العميل يقول فيها "لا أعرف ماذا حدث، ولكن فجأة لم يعد موقعي موجوداً". مترجم بتصرف من مقال How to Create Custom User Roles in WordPress لكاتبه Al Davis.
  7. إذا كنت تستخدم ووردبريس لفترة، أو حتى إذا كُنت مستخدمًا جديدًا، فغالبًا ما ستحتاج في وقت ما أن تجري بعض التعديلات في النص البرمجي لموقعك. قد يكون أي شيء، مثل إضافة خاصية أساسية إلى موقعك لا تتطلب إضافة كاملة plugin، أوإنشاء قالب فرعي child theme، وهذا فقط غيض من فيض. لكن توقف ها هنا! هناك بعض القواعد الأساسية التي يجب معرفتها فيما يتعلق بتعديل النص البرمجي في ووردبريس، بالإضافة إلى بعض المناطق التي يجب تفاديها تمامًا. وهذا ما سنتناوله في مقالنا. قاعدة عامة: إياك أن تعدّل في البنية الأساسية لووردبريس (WordPress Core)ربما قد تكون سمعت تلك العبارة الخالدة مرارًا من متمرسي ووردبريس: “لا تعدّل في البنية الأساسية" “Don’t hack core". ما يعنيه هذا هو أنك يجب ألا تلمس الملفات الأساسية، وهي الملفات المسؤولة عن عمل ووردبريس. لم هذا؟ حسنًا، هناك العديد من الأسباب، لكن دعنا نكتف باثنين من أهمها هنا: عدم ضمان استمرارية موقعك مستقبلًا. إذا أجريت تعديلات في بنية ووردبريس، فإنك تخسر القدرة على التحديث مع المحافظة على تعديلاتك. أي ببساطة، عندما يصدر تحديث جديد وتضغط على زر التحديث لينطبق على موقعك (لأنك شخص منظم يحافظ على تحديث موقعه بانتظام)، فإن تعديلاتك سيتم الكتابة فوقها بالتحديث. مما يضطرك لإعادة كتابتها، وهذا مضيعة للوقت في رأيي.توجد بالفعل إضافة متاحة لهذا. عندما تعدل في بنية ووردبريس، فإنك تفعل بالضبط ما تفعله الإضافات: تغيير، أو إضافة إلى الطريقة التي يعمل بها ووردبريس. بالتالي الإضافات هي طريقة أفضل بكثير في تحقيق ما تريد فعله بدلًا من تعديل البنية الأساسية.إذًا الآن تعرف لم لا يجب تعديل البنية الأساسية، دعنا نر ما المتاح تعديله بأمان. بنية ملفات ووردبريسهذه لقطة توضح بنية ملفات موقع ووردبريس نموذجي. سترى أن هناك ثلاث مراحل عليا من المجلدات ومجموعة من الملفات. المجلدات المسماة wp-admin وwp-include محظورة، يجب ألا تلمس شيئًا هناك. أما مجلد wp-content فإنه يحوي القوالب، الإضافات، وأي صورة أو مستند نصي رفعتها على الموقع. ويمكنك أن تجري تعديلات على قالبك الخاص عن طريق ملف functions.php. وبالنسبة لملفات المستوى الأعلى، فالملف الوحيد المسموح بالتعديل فيه هو ملف wp-config.php. سنغوص في بعض الأمثلة لكيفية تعديل كلا الملفين لاحقًا، لكن دعنا نتحدث عن بعض من أفضل الممارسات قبل أن نفعل. أفضل الممارسات لتعديل ملفات ووردبرسيأتي ووردبريس مع محرر قوالب وإضافات كجزء من الخواص الأساسية. يمكنك أن تجده في موقعك من الشريط الجانبي: المظهر > المحرر أو Appearance > Editor ألقِ نظرة عليه إذا أحببت، ثم بعدها انس أمره تمامًا، لأنك لن تستخدم محرر ووردبرس لأي شيء. في الحقيقة، أود أن تحذف هذه الخاصية تمامًا من ووردبرس لسببين: هذا المحرر ليس محررًا نصّيّا برمجيًا كامل الوظائف، ويمكن بسهولة ارتكاب أخطاء تنتج عنها "شاشة الموت البيضاء".حين تضغط على زر الحفظ، ليس هناك زر للرجوع. ليس هناك إمكانية لإعادة المحاولة. معظم محررات النصوص البرمجية الجيدة تُتيح لك إمكانية التّراجع عن التغييرات التي أجريتها في حال لم تعمل كما يجب.إذًا، ما هو البديل؟ حسنًا، إذا أردت استخدام محرر نص برمجي، فستحتاج دراية بـ FTP . FTP هو اختصار لـ File Transfer Protocol بروتوكول نقل الملفات. ولنشرح ذلك بأنه عبارة عن نقل الملفات من جهازك إلى خادم الويب الذي يوجد عليه موقعك. ستحتاج للاتصال بموقعك عن طريق عميل FTP، ثم تحمّل نسخة من الملف الذي تريد تغييره، أجرِ التغييرات ثم ارفعه إلى الخادم، وسيحل محل النسخة القديمة في الخادم. بعض محررات النصوص البرمجية – Coda على سبيل المثال– يسمح لك بتعديل الملفات مباشرة على الخادوم. والبعض الآخر يسمح باستعراض تعديلاتك (عادة لملفات HTML وCSS فقط). إذا كان محرر النص البرمجي الخاص بك يفعل هذا، فمن المستحسن أن تحفظ نسخة من الملف الأصلي باسم جديد (وليكن filename_old.php مثلًا). بهذه الطريقة، إذا ارتكبت أي خطأً لا تستطيع الرجوع فيه، فيمكنك ببساطة حذف الملف المعدّل، وإعادة تسمية النسخة الاحتياطية التي أنشأتها إلى اسمها الأصلي وكل شيء سيكون على ما يرام. حان الوقت لتعديل بعض ملفات ووردبريسسنجري بعض التعديلات البسيطة على ملفين wp-config.php وfunctions.php وهي ملفات غير تابعة للقالب، غالبًا ما ستحتاج إلى تعديلها. تعديل ملف wp-config.phpملف wp-config.php هو واحد من أهم الملفات في موقع ووردبريس الخاص بك. ولا يأتي مع النسخة الأساسية لووردبريس؛ إذ أنك تنصب ملفًا يُدعى wp-config-sample.php. ويُنشأ ملف wp-config.php أثناء عملية التنصيب (تحديدًا عند إدخال معلومات قاعدة البيانات الخاصة بموقعك)، أو يمكنك ببساطة إعادة تسمية ملف wp-config-sample إلى wp-config وإضافة معلومات قاعدة البيانات إلى الملف. ستجد كلّا الملفين في الجذر الأساسي لمسار الويب. إذا أتممت عملية التنصيب (لقطة لها بالأسفل)، بما في ذلك إعدادات قاعدة البيانات الخاصة بالموقع، فإنك بالفعل قد أنشأت ملف wp-config.php. الآن، دعنا نفتحه في محرر النص البرمجي المفضل لديك لنجري بعض التغييرات. مثال نص برمجي مفيد: تعطيل التحديثات التلقائيةكانت التحديثات التلقائية جزءًا من ووردبريس منذ الإصدارة رقم 3.7. ولا يفضل الجميع هذه الخاصية، إذ يودون لو أنهم يغلقونها. كل ما تحتاجه لفعل هذا هو إضافة ذلك السطر إلى ملف wp-config.php الخاص بموقعك. /* تعطيل تحديثات ووردبرس الة */ define( 'WP_AUTO_UPDATE_CORE', false );عندما أضيف نصًا برمجيًا إلى ملف wp-config، فإنني أتأكد دومًا من وضعه في مكان يسهل الرجوع إليه عند الحاجة. انظر إلى السطر 85 في ملف wp-config.php (من السهل الوصول إليه باستخدام محرر النص البرمجي)، ستجد هذه الجملة: /* That's all, stop editing! Happy blogging. */بمعنى: /* هذا هو المطلوب! توقف عن التعديل. نتمنى لك التوفيق في موقعك! */إنني أضع جميع تعديلاتي قبل ذلك السطر مباشرة. وبهذا أستطيع العثور على جميع التعديلات التي أجريتها في مكان ثابت مع كل موقع أعمل عليه. فقط تأكد من حفظ نسخة احتياطية من الملف قبل أية تعديلات. تعديل ملف functions.phpملف functions.php يسمح لك بتعديل وظائف ووردبريس. إذ يعمل هذا الملف كإضافة، فينشء خصائص ومزايا جديدة في موقع ووردبريس الخاص بك. وعادة ما تجد الملف موجودًا في مجلد القالب الخاص بك في المسار /wp-content/themes/yourthemename/ (حيث yourthemename هو اسم القالب). إذا لم تمتلك واحدًا، يمكنك بسهولة إنشاءه؛ فقط تأكد من أنك تضعه في القالب المٌفعّل. إذا بدأت بملف جديد، فستحتاج لبداية نص PHP مستخدمًا php?>. وعلى عكس ملف php التقليدي، فإنك لن تحتاج لإغلاق النص البرمجي (في الواقع، تقل احتمالية الأخطاء إذا تركته مفتوحًا). وستجد بالأسفل مثالين للخصائص التي يمكنك إضافتها إلى ملف functions.php خاصتك ملحقة بالنص البرمجي، لا تنس أنه من المستحب إضافة التعديلات الكبيرة عن طريق قالب فرعي. مثال نص برمجي مفيد: إضافة دعم المُصغّرات thumbnailsإذا كان قالبك لا يدعم المُصغّرات، فيمكنك إضافة النص البرمجي التالي إلى ملف functions.php الخاص بك: add_theme_support( 'post-thumbnails');لاستخدامه في قالبك، فقط أضف هذا السطر من الكود إلى الحلقة loop حيث تريد للمُصغرات أن تظهر: <?php the_post_thumbnail(); ?>مثال نص برمجي مفيد: تخصيص طول الاقتباساتالطول الافتراضي للاقتباسات في ووردبريس هو 55 كلمة، ولكن يمكنك تعيين طول الاقتباس حسبما تريد عن طريق إضافة ذلك النص البرمجي إلى ملف functions.php الخاص بك: //وظيفة تخصيص طول المقتبس custom_excerpt_length($length) { return 20; } add_filter('excerpt_length', 'custom_excerpt_length');فقط كل ما تحتاجه تغيير رقم "20” إلى عدد الكلمات التي تريدها. الخاتمةوالآن قد أصبحت تعرف القواعد الأساسية بخصوص تعديل ملفات البنية الأساسية لووردبريس. أتمنى أن تكون قد استمتعت بالمقال. وبالطبع نود معرفة آرائكم ونسر بالإجابة على ما يلتبس عليكم في التعليقات. مُترجم بتصرف من مقالة How to Edit Your WordPress Website Without Hacking Core Files لصاحبها Tom Ewer.
  8. لقد كنت أفكر كثيرًا مؤخرًا عن الوقت المناسب لبداية التسويق لشركة ناشئة. في شركتي الناشئة السابقة، كنا مترددين في محاولة استقطاب الإعلام مبكراً. حيث كنا دائماً نننتظر إلى أن يصبح منتجنا "جاهزًا" أعتقد أن هذا غالبًا تفكير شائع. كي أزيل بعض المخاوف من التسويق المبكر وأزكي المنافع. سأشارك بعضًا من انطباعاتي عن مرحلة التسويق المبكر بناءً على تجربتي مع شركتي الناشئة حاليًا: Buffer. لم نتردد في التسويق في مرحلة مبكرة؟مثل كل شيء، من السهل أن تفكر في أسباب عدم البدء في تسويق شركة ناشئة. 1- نعتقد أن المنتج غير جاهز للتسويقفي مرحلة مبكرة، تعرف حتماً أن أشياء مثل مسارات التسجيل signup funnel وعملية تهيئة المُستخدمين الجدد onboarding process يمكن لها أن تتطور كثيرًا. بناءً على هذه الحقيقة الطبيعية، مع انتشار اتجاه الشركة الناشئة اللينة lean startup على مجال واسع الآن فإننا جميعا يستحسن بنا أن ننشر منتجاتنا بأبكر ما يمكن. إذ أنه من الطبيعي أن تعتقد أن التسويق يجب أن يبدأ حين يكون المنتج جاهزًا، ولكني أعتقد أننا نعيق أنفسنا بالانتظار. 2- نعتقد أن هناك فرصة واحدة فقطأعتقد أنه من المنطقي جدًا أن تتخوف من امتلاك فرصة واحدة مع المستخدمين المستهدفين عند التخطيط لتسويق منتج. إذ أن فكرة تكوين أحد ما قراره النهائي بناءً على الانطباع الأولي فكرة يمكن تصديقها للغاية. وقد اكتشفنا أن هذا الأمر بعيد تمامًا عن الحقيقة. 3- نعتقد أن المستخدمين المستهدفين سينفدونلقد اكتشفت مع Buffer أنه أحيانًا عندما كنا نصل لمرحلة مستقرة في معدل التسجيل في الموقع، وبينما كان الحل الواقعي هو تجربة طرق جديدة لتسويق فكرتنا، أو محاولة الارتقاء بطرقنا الحالية لمستويات أعلى، كان الاسلوب الأسهل هو الاعتقاد أننا وصلنا لنقطة التشبع ولم يعد بمقدورنا الوصول إلى المزيد من الناس. نعرف الآن، كما ستكتشف لاحقًا بالأسفل، أننا لن نصل أبداً لنقطة لا نستطيع أن نحضر فيها المزيد من التسجيلات الجديدة. لم يجب علينا التسويق حتى لو كان الوقت مبكراً جداًأدركت مع مرور الوقت، أنّه حتى حين نطلق منتجاتنا مبكراً، يجب علينا أن نهدف إلى تسويق شركتنا الناشئة مبكرًا جدًا. أعتقد أن ما يبدو مبكرًا جدًا هو في الحقيقة وقت ممتاز لبداية التسويق. معظم الناس غالبًا يتأخرون كثيرًا عما يجب. 1- أفضل طريقة لتطوير المنتج هي استخدامهمات مولينوِج Matt Mullenweg، مؤسس Wordpress، عبر عن هذا بشكل أفضل مما كنت سأفعل مطلقًا: ما اكتشفناه مع Buffer هو أن معاملتنا للتسويق كوسيلة لتبادل النقاشات بدلًا من كونه قناة إذاعية، قد جعل التسويق أفضل طريقة لتقوية الإعلان بالإضافة إلى تطوير المنتج. أجرينا العديد من التجارب مع إعلاننا وكان هناك الكثير لتحسينه في المنتج، وقد أصبح التطور السريع أسهل بكثير إذ كان شريكي ليو يكتب عدة مقالات أسبوعيًا عن Buffer لمجموعة متنوعة من المدونات. 2- لا يسجل الناس دائمًا في المرة الأولى التي يسمعون بها عن منتجكعندما بدأنا ننجح في إبراز Buffer في عدد من المدونات، اكتشفنا من المحادثات في التعليقات أن العديد من الناس قد سمعوا بالفعل عن Buffer. وما حدث هو أنه بينما كان بعض الناس يسجلون في المرة الأولى التي يسمعون بها عن Buffer، انتظر الآخرون حتى يسمعوا عنها عدة مرات. أعتقد الآن أن عددًا كبيرًا من الناس لا يسجلون في الخدمات التي يسمعون بها لأول مرة. ولهذا السبب، يجب أن نعمل على بروز اسم منتتجنا مرارًا على نطاق واسع. إذ أن هناك نقطة تحول للناس يقررون فيها التجربة. يجب عليك العمل للوصول إليها. 3- لن ينفذ عدد المستخدمين المستهدفينأدركت مؤخرًا أننا لن نصل لنقطة لا نستطيع فيها جلب المزيد من التسجيلات الجديدة في Buffer. إذ أننا في الأساس أداة لمستخدمي Twitter، يمكنك أن تتخيل سرعة نمو سوق تويتر لتدرك أننا لن نواجه مشكلة التشبع. لمزيد من الوضوح، ألقٍ نظرة على هذا المخطط الذي يظهر إحصائيات تسجيلات Evernote منذ ستة أشهر مضت: منذ ستة أشهر كانت Evernote تسجل حوالي 2000 مستخدم جديد كل ساعة. وقد أعلنوا مؤخرًا أنهم زادوا من 6 مليون مستخدم مسجل في وقت هذا المخطط إلى أكثر من 10 مليون مستخدم مسجل اليوم. وأتوقع أن ايفرنوت قد تسجل حوالي 100.000 مستخدم جديد يوميًا. لكي تحصل على نمو كهذا يجب عليك العمل باستمرار على التسويق. أعتقد أنه عند بناء شركة ناشئة يجب التركيز على التسويق وتطوير المستخدم مثلما نركز على تطوير المنتج. هل بدأت بتسويق منتجك بعد؟ وإن لم تكن، فلم تؤخره؟ بانتظار تعليقاتكم على هذه المقالة. ترجمة -وبتصرّف- للمقال Why you should start marketing early لصاحبه جويل غاسكوين (مؤسّس خدمة Buffer).
  9. عندما تبني شركة ناشئة، فمن الهام جدًا أن أن تتفكر في المُسلّمَات. أعتقد أن واحدة من هذه المُسلّمَات التي يجب التفكير فيها هي الخطوات الأولية التي يتخذها الناس عادة عندما يمتلكون فكرة. وأحدها هي صفحة "Coming Soon” والتي يُمكن ترجمتها بـ"سننطلق قريبًا". مبدأ صفحة "سننطلق قريبًا" قبل أن يظهر منتجك هو شيء كان يجول في خاطري منذ بعض الوقت. فللوهلة الأولى، يبدو واضحاً هدف هذه الصفحات: بالتأكيد هو لجذب انتباه المستخدمين المحتملين لمنتجك حتى تًعلمهم حين تكون جاهزًا، لكن مؤخرًا، فكرت في هدف صفحات "سننطلق قريبًا" وكيف يمكن للشركات الناشئة أن تكون أكثر فعالية عن طريق الصفحة التعريفية Landing Page الأولى لهم. لِمَ ننشئ صفحات "Coming Soon"دائماً ما تنشر المواقع التي يتصفحها كثير منا عادة كمؤسسي الشركات الناشئة مثل TechCrunch أرقام نمو هائلة للشركات الناشئة، بالتالي من السهل أن نفترض أن الهدف الرئيسي من صفحة "سننطلق قريبًا" هو تجميع أكبر عدد ممكن من البريد الإلكتروني. إذ يبدو منطقيًا أن هذه هي الطريقة التي ستساعدنا على النجاح عند إطلاق المنتج. وقد فعلتها بنفسي لمرات غير معدودة في الماضي. في الوقت نفسه، هناك فكرة جديدة تجتذب الكثير من الانتباه أعتقد أنها قد توجه مؤسسي الشركات الناشئة إلى المسار الخاطيء. وهي فكرة "صفحة الإطلاق الفيروسية" التي شهرتها كلاً من Hipster، وعنوان مقالة TechCrunch الذي يشعرني بالضآلة: "كيف حققت شركة ناشئة تدعى هبستر 10 آلاف تسجيل في يومين، دون الإفصاح عن هدفها". صفحات الإطلاق هذه متاحة الآن لأي شركة ناشئة بفضل LunchRock. ما هو هدف صفحة "سننطلق قريبًا"؟كل هذه الدعاية الحالية حول "صفحات الإطلاق الفيروسية" بالإضافة إلى مدى ترسخ فكرة صفحة "سننطلق قريبًا" في عقول الناس جعلتني أتساءل عن هدف صفحة "سننطلق قريبًا". أعتقد أنه في حالات كثيرة، الهدف الذي يشغل مؤسس الشركة الناشئة هو تجميع أكبر قدر ممكن من عناوين البريد الإلكتروني حتى يحدث ضجة كبيرة لدى إطلاق منتجهم عندما يصبح جاهزًا. على أقل تقدير، نحن نركز على كمية عناوين البريد الإلكتروني أكثر من تركيزنا على ما إذا كان أي من أصحاب البريد الإلكتروني سيستخدم منتجنا فعلًا. هل نريد حقًا تجميع المئات أو الآلاف من البريد الإلكتروني، مثل Hipster، دون أن يعرف الناس ماذا يفعل منتجنا؟ هذه تبدو لي خطة مخاطرة. تجاوز "سننطلق قريبًا"أسمع مؤخراً عن مؤسسي شركات ناشئة أخرى يطلقون فكرة جديدة، وغالبًا ما أسمع منهم أعداد عناوين البريد الإلكتروني التي حازوا عليها من صفحة "سننطلق قريبًا". لكن نادرًا ما أسمع عن التّفاعل conversations الذي حدث بينهم وبين المُستخدمين المُحتملين. نصيحة أشجع المؤسسين الجدد للشركات الناشئة على تنفيذها مراراً هي تجاوز صفحة "سننطلق قريبًا" بالكامل. بتجاوزها، يمكنك أن تركز حقاً على ما يهم. فبدلاً من صفحة "سننطلق قريبًا"، ضع صفحة تعريفية لمنتجك. اجعلها تبدو كما لو كان المنتج موجودًا، ثم حين يحاول الناس تجربة التسجيل، أظهر لهم صفحة توضح أنك لست جاهزًا بعد لهم، نفس المجهود، ولكن هذا التغيير الضئيل سيعطيك نتائج هائلة. التّفاعل conversations والتعلم عن طريق التثبت من الفعالية validated learningالفائدة الرئيسية من تجاوز صفحة "سننطلق قريبًا" هي أنك قد تكتسب معرفة عن طريق التثبت من فعالية شركتك الناشئة validated learning . التعلم عن طريق التثبت من الفعالية هو مقياس التقدم الذي يعرّفه إريك رايس لمنهجية الشركة الناشئة اللينة Lean Startup. والمبدأ هنا هو أن كل تغير تحققه يجب أن يساعدك على تعلم المزيد عن مستخدميك. بتجاوز صفحة "سننطلق قريبًا"، فإنك تتعلم عن طريق التثبت من فعالية عناوين البريد الإلكتروني الذي تجمعها: وهو الأشخاص الذين اعتقدوا أن منتجك موجود وأبدوا اهتماماً حقيقياً بمحاولة التسجيل. إذا كان هناك زوار للصفحة ولم تحصل على بريد إلكتروني، فاعلم هنا أن هناك مشكلة بفكرتك أو الطريقة التي تقدمها بها. عامل فكرتك كفرضية بحاجة إلى اختبار صارم، وعامل البريد الإلكتروني كما لو كانوا أشخاصًا سيكونون سعيدين بالتواصل معك لمناقشة فكرة منتجك أكثر للتثبت من فعاليته في حل مشكلة حقيقية يواجهونها وأنهم من الممكن أن يدفعوا حقًا لهذا. لا أعتقد أن مؤسسي الشركات الناشئة الجدد يولون الاهتمام الكافي لفكرة تبادل التّفاعل مع الناس الذين يعطوهم عناوين بريدهم الإلكتروني. فائدة هذه الطريقة أيضًا تكمن في أنك تستطيع العمل على منتجك بالتوازي مع التعلم عن مستخدميك وعن كيف توصل الصفحة التعريفية خاصتك فكرة منتجك. ومع بعض التعديلات، غالبًا ستستطيع إطلاق المنتج الحقيقي بنفس الصفحة التعريفية. بالتالي صفحتك التعريفية الأولى يمكنها أن تكون بسيطة للغاية. وهذا ما فعلته أيضاً في إطلاق شركتي الناشئة الحالية، Buffer، وقد نجح بشكل جيد. هل امتلكت من قبل صفحة "سننطلق قريبًا" لشركتك الناشئة؟ وهل تمتلك واحدة حاليًا؟ هل ستغير في أدائك مستقبلًا؟ أود معرفة أفكارك في التعليقات على هذه المقالة. ترجمة -وبتصرّف- للمقال ?What is your coming soon page for لصاحبه Joel Gascoigne. صورة المقال لصحابها Jason Tester.
  10. ربما سمعت من قبل عن رخص المشاع الإبداعي Creative Commons، التي بدأت تنتشر على استحياء في المحيط العربي التقني، وربما لاحظت التنويه Content licensed under CC BY-NC-SA 4.0 unless mentioned otherwise (المحتوى منشور تخت رخصة المشاع الإبداعي النسب-غير تجاري-المشاركة بالمثل 4.0 ما لم يذكر غير ذلك) في خاتمة موقع أكاديمية حسوب وتساءلت عن معناها وفائدتها. دعنا أولاً نتعرف عليه من خلال هذا الإنفوجرافيك المبسط على هذه الرّخصة. من الأفكار الشائعة حول فكرة رخص المشاع الإبداعي خصوصاً، والرخص الحرة عموماً، هي أن فوائدها تنحصر على الجانب الخيري أو الأخلاقي، أي فائدة المجتمع دون أي عائد على مصلحة الشخص أو المؤسسة. وهي فكرة سريعة الحكم على رخص المشاع الإبداعي، إذ لها فوائد كثيرة في التسويق للأعمال والأفكار وأمثلة ناجحة في مجتمع الإنترنت. هناك عدة جوانب للاستفادة من ترخيص العمل برخص المشاع الإبداعي، نذكر منها ما سيلي في هذا المقال. زيادة نطاق جمهوركمع السماح للجمهور بمشاركة أعمالك، تزيد فرص وصولها إلى نطاق أوسع وأعرض من المستخدمين والمتابعين، مع ضمان النسب إلى المؤلف الأصلي للعمل، وهو أنت، بالتالي يزيد من انتشار اسمك وتعريف الناس بأعمالك مما يدفعهم للبحث عن بقية الأعمال ومتابعتها والمطالبة بأعمال مماثلة بمقابل، وهكذا قد وفرت جزءاً كبيراً من الدعاية المجانية. ونقتبس هنا من كاتب الخيال العلمي كوري دكتورو، الذي تحدث عن تجربته الناجحة في ترخيص جميع النسخ الإلكترونية من كتبه برخصة المشاع الإبداعي في مقالته "Giving it away منحه"، أنه بالرغم من أن معظم الناس ممن حملوا الكتاب الإلكتروني لا ينتهي بهم الأمر بشراءه، إلا أنهم لم يكونوا ليشتروه في جميع الأحوال، بالتالي لم أخسر مبيعات، بل كسبت جمهوراً. هناك عدد من الناس يعتبرون الكتاب الإلكتروني بديلاً عن شراء الكتاب الورقي، وهم مبيعات ضائعة، وهناك عدد أكبر منهم يعتبره تشجيعاً لشراء النسخة الورقية منه. وهم مبيعات مكتسبة، طالما عدد المبيعات المكتسبة يفوق المبيعات الضائعة، فأنا في الصدارة! قد لا ينحصر توسيع الجمهور نتيجة لرخصة المشاع الإبداعي في نطاق اللغة المنشور بها العمل، بل يشمل أيضاً، إذا كانت الرخصة تسمح بالاشتقاق من العمل، إمكانية ترجمة عملك إلى لغات قد لا تستطيع توفيرها بالطرق العادية، إذ أن ترجمة الأعمال المحمية بحقوق الملكية تتضمن معاملات قانونياً أكثر تعقيداً وتكلفة وتستهلك وقتاً أكثر مما تتطلبه عملية الترجمة نفسها. ونأخذ هنا على سبيل المثال ما ذكره الكاتب سيموني أليبراندي صاحب كتاب "Creative Commons: A user guide" عن ترجمة كتابه إلى اللغة العربية كيف أن الترخيص الحر للكتاب، أتاح ترجمته وإتاحته لما يقرب من 250 مليون شخصاً إضافياً من قارئي اللغة العربية، بينما لو كان الكتاب مرخصاً برخصة مغلقة، لاحتاج الناشر العربي الاتصال بناشر الاتصال والتفاوض على حقوق الترجمة في عملية مرهقة وطويلة، وهو ما لم يكن ضرورياً هنا لحسن الحظ! تحسين ترتيب ظهور أعمالك في نتائج البحثمع شرط النسب الموجود حتى في أكثر رخص المشاع الإبداعي تحرراً، وهي رخصة النسب، يساهم كثرة الروابط إلى العمل الأصلي في تحسين ترتيب ظهور العمل في محركات البحث وزيادة فرص ظهوره بشكل عام. بالإضافة إلى أن محرك البحث الشهير جوجل، يوفر خيار البحث عن الصور والمقالات المرخصة برخص المشاع الإبداعي مع تحديد نوع الرخصة، مما يسهل من عملية الوصول إلى المحتوى بشكل أكبر وأسرع، ناهيك عن توفير موقع المشاع الإبداعي لمحرك بحث قوي (وجاري العمل حالياً من قبل مؤسسة المشاع الإبداعي على تحديثه إلى أداة أقوى، ويمكن متابعة عملية التطوير والمشاركة فيها أيضاً، هذه من مميزات الرخص الحرة الرائعة) للبحث عن مختلف أنواع الأعمال الإبداعية بصيغها المختلفة في شتى أنواع المواقع. منبع مجاني من الأفكار والاقتراحاتإذا كان عملك عبارة عن كود برمجي أو موقع أو تطبيق إلكتروني ما، فإتاحته برخصة المشاع الإبداعي، ومثيلاتها من الرخص، يوفر لك دعماً مجانياً من محبي التقنية وروادها للعثور على الثغرات والأخطاء الموجودة في الكود وتصحيحها، وحتى إضافة خواص جديدة تطور من العمل، وخمن ماذا؟ ترخيصك للعمل بشكل يسمح بالتعديل عليه دون الاستفادة منه تجارياً، لا يمنعك من الاستغلال التجاري له، أو التعديل عليه بالاستلهام من الأفكار والاقتراحات الجديدة، أو ما شابه، إذ أن حقوق العمل ممنوحة لك كلياً طالما هو ضمن ملكيتك، فقط هي مقيدة للآخرين حسب رخصة العمل. وطبعاً لنا في موقع Github الشهير أفضل مثال على مشاركة الأعمال بمختلف الرخص الحرة والمساهمة في تطويرها وتحسينها. وهناك نماذج ناجحة لمؤسسات وأشخاص رخصوا أعمالهم برخص المشاع الإبداعي، نذكر على سبيل المثال لا الحصر: Ted Talks: واحدة من أعمدة العالم التقني، بدأت محاضرات تيد كحلقات دراسية خاصة يحضرها القليلون. وبعد خمس سنين من نشر كل محاضرات تيد تحت رخص المشاع الإبداعي، أكثر من 200 مليون مشاهد تمتعوا بالتفكير الإبداعي لمتحدثي تيد. تقول جون كوهين، مديرة تنفيذية لإعلام تيد "هذا النمو المزدهر كان نتيجة مترتبة كلياً على التوزيع الحر والمفتوح، إذ أتاح ترخيص المشاع الإبداعي المشاركة بطرق أفضل مما كنا لنفعله بمفردنا." Global Voices أصوات عالمية: تفشل المؤسسات الإعلامية الكبري في توصيل معلومات متعمقة من قلب الحدث في الأحداث العالمية - في حين أن المدونين المحليين والصحفيين المواطنين غالباً ما يكونون أكثر صلة ودراية بالمجتمعات التي يكتبون عنها. أصوات عالمية GlobalVoices، مؤسسة غير ربحية أنشأتها الصحفية ريبيكا ماك كينّون، توفر منصة لحوالي 350 محررين وكتاب ومترجمين متطوعين من حول العالم لجمع الأنباء من قلب مجتمعاتهم في مكان واحد. هؤلاء الصحفيين المواطنين وفروا تغطية مفصلة مباشرة لجميع الأحداث بداية من زلزال هايتي إلى احتجاجات إيران. وكل المحتوى مرخص برخصة المشاع الإبداعي النسب BY، لذا يمكن ترجمة ونشر المعلومات بحرية لمن يريد أكثر من اللقطات السريعة في أخبار المساء. Pratham Books كتب برثام: كتب براثام، دار نشر صغيرة غير ربحية في الهند، مهمتها البسيطة الطموحة هي إتاحة كتاب لكل طفل. مدركة أن هذا الهدف الضخم الجريء يستحيل تحقيقه بمفردها، بدأت براثام بنشر كتبها ورسوماتها تحت رخص المشاع الإبداعي على فليكر Flicker وسكريبد Scribd في عام 2008. جوتام جون، مدير المشاريع الجديدة في كتب براثام، يقول "كدار نشر صغيرة، لا نمتلك القدرة لتخصيص رخص كل مرة يود طرف مهتم استخدام محتوانا بشكل مختلف. وما أتاحته لنا رخص المشاع الإبداعي هو التعاون مع شركاء مختلفين دون مرافقة المفاوضات القانونية والوقت والمال الذي تستهلكه لتتم." بدلاً من ذلك، ترسل كتب برثام للمستخدمين رابط إلى تحميل الكتاب وصفحة الترخيص ببساطة. Jonathan Worth جوناثان وورث: تعلق أعمال المصور البريطاني جوناثان وورث في متحف اللوحات القومي في لندن، يدرس التصوير في جامعة كوفنتري بالمملكة المتحدة، وقد صور الممثلين كولين فيرث، رايتشل هانتر، جود لو وهيث لدجر. وقد قضى وورث وقته، مثل معظم زملائه، في تطويق الإنترنت لحماية أعماله من السرقة. كان منزعجاً من كمية الوقت المهدر في ملاحقة انتهاكات ملكيته الفكرية. يقول وورث "هنا قابلت كاتب الخيال العلمي كوري دكتورو، الذي كان يمنح كتابه للجمهور، ويكسب منه المال في الوقت ذاته. صورته صورة فوتوجرافية وسألته عن الصفقة، فاقترح عليّ اجراء تجربة." وقد وافق وورث، فرخصوا الصورة برخصة المشاع الإبداعي النسب BY وشاركوا نسخ عالية الجودة منها على الإنترنت مجاناً، مع توفير نسخ موقعة بأسعار متنوعة ومستويات مختلفة من الحقوق الحصرية. قال وورث "وقد بيعت النسخ الأغلى أولاً، لم يكن أحد منهم قد سمع عني، ولكنهم كانوا يدفعون أسعاراً جيدة لمطبوعاتي." Open University الجامعة المفتوحة: تقبل الجامعة المفتوحة الطلبة من جميع الخلفيات، بغض النظر عن إنجازاتهم الأكاديمية أو ظروفهم الاجتماعية. وهي أول جامعة تعليم عن بعد ناجحة في العالم، وواحدة من أكبرهم، مع حوالي أكثر من ربع مليون طالب في ٤٠ دولة. في عام 2005، أخذت الجامعة المفتوحة خطوة إضافية في انفتاحها مع إنشائها لموقع جديد، OpenLearn التعلم المفتوح، مع منح الجمهور صلاحيات الوصول إلى مواد دوراتها التدريبية وإعادة استخدامها تحت رخص المشاع الحر. باختيارها لاستخدام رخص المشاع الإبداعي بدلاً من تطوير قوانينها الخاصة بخصوص الصلاحيات، وفرت الجامعة كثيراً من أتعاب المحاماة. يقول باتريك ماك أندرو "لقد خصصنا بداية 100.000 جنيه استرليني كأتعاب قانونية لكتابة رخصة صالحة لموقع التعلم المفتوح OpenLearn، لكن لم يصرف أي منها حين استخدمنا المشاع الإبداعي"، ساعد المشاع الإبداعي الجامعة أيضاً في توفير التكلفة عند تطوير مواد الدورات التدريبية والتعامل مع موزعي الطرف الثالث. " استخدامنا لرخصة معروفة ساعدنا بدعم الآخرين للانضمام. حيث كنا نوجه الناس إلى معلومات المشاع الإبداعي المستقلة بدلاً من الطلب منهم لاتخاذ رخصة مخصصة." منذ إطلاقه، حصد موقع التعلم المفتوح OpenLearn أكثر من 2 مليون زائراً، وتم تحميل مواد الدورات التدريبية أكثر من 20 مليون مرة على أي تيونز يو iTunes U، مما يجعلها أكثر جامعة تحميلاً في متجر أبل. يمكنك معرفة تفاصيل أكثر عن قصص النجاح السابقة وتصفح المزيد في كتاب The Power Of Open.