اذهب إلى المحتوى

لوحة المتصدرين

  1. يحيى

    يحيى

    الأعضاء


    • نقاط

      3

    • المساهمات

      565


  2. E.Nourddine

    E.Nourddine

    الأعضاء


    • نقاط

      2

    • المساهمات

      1458


  3. عبد اللطيف ايمش

    • نقاط

      2

    • المساهمات

      1406


  4. هبة محمد سعيد

    هبة محمد سعيد

    الأعضاء


    • نقاط

      2

    • المساهمات

      135


المحتوى الأكثر حصولًا على سمعة جيدة

المحتوى الأعلى تقييمًا في 06/05/16 في كل الموقع

  1. مع اقتراب شهر رمضان المبارك، يحب الناس تبادل البطاقات التي يهنئون بها بعضهم البعض بالشهر الفضيل، أو تلك البطاقات التي تحتوي على الآيات والأحاديث النبوية والتوجيهات والفتاوى المتعلقة بالشهر. سنصمم نموذج لبطاقة تهنئة بشهر رمضان المبارك بنمط إسلامي، مع إمكانية استخدامها في مناسبات أخرى كالعيد مثلا! تتكون بطاقتنا من هلال ومساجد وخلفية بزخارف إسلامية، سنشرحها على أقسام. رسم الهلال ارسم دائرة كاملة الاستدارة بالضغط على Ctrl أثناء الرسم، واجعل شفافيتها Opacity للمنتصف من لوحة التعبئة والحدود Fill and stroke. كرّر الدائرة مجدّدا عن طريق اختيار Duplicate من الزر الأيمن ولوّنها بلون مختلف. صغّر الدائرة المكرّرة مع الضغط على Ctrl أثناء التصغير، ثم اسحبها حيث الموضع الذي يتشكل الهلال بحذفه من الدائرة الأولى. حدّد كلا الدائرتين معا بالاستعانة بزر Shift لتحديد الدائرة الأخرى، ثم من قائمة المسار Path من شريط المسارات العلوي اختر أمر الفرق Difference. رسم المساجد ارسم عددا من المستطيلات وصفها عاموديا لتشكل المئذنة. بأداة النجمة والمضلع Stars and polygons سنرسم المثلث الذي يقع في رأس المئذنة مع الضغط على Ctrl أثناء الرسم للتحكم باتجاه المثلث، بعد اختيار المضلع من الشريط العلوي، وقيمة عدد الزوايا 3 وإعطاء القيمة المناسبة للاستدارة التي نرغب بها. عدّل عرض المثلث بأسهم التحديد والتحجيم، وقم بمحاذاة جميع أجزاء المئذنة عاموديا من لوحة المحاذاة والاصطفاف Align and distribute. أضف عددًا من الدوائر فوق المئذنة ليكتمل شكلها. ارسم مستطيلا كقاعدة للقبة، ثم ارسم فوقه شكلا بيضاويا بالعرض الذي ترغب أن تكون عليه القبّة. حوّل الشكل البيضاوي لمسار عن طريق الشريط العلويّ لأداة التحرير Node tool أو اختيار Object to path من قائمة المسار. ارفع العقدة العلوية Node قليلا إلى الأعلى مع الضغط على Ctrl أثناء سحبها للمحافـظة على محاذتها . حوّل العقدة إلى زاوية من شريط أداة التحرير العلوية باختيار Make selected nodes corner. حرّك الذراع الأيمن Node handle للعقدة العلوية مع عقارب الساعة مع الضغط على Ctrl إلى أن تحصل على الميلان المناسب، ثم حرّك الذراع الأيسر بشكل متقابل في الاتجاه المعاكس. حوّل العقدتين الجانبيتين إلى عقد متناسبة باختيار Make selected nodes symmetric بمعنى أن أي تغيير في أحد ذراعي العقدة سيحصل للذراع الآخر. اسحب الذراع العلوي للعقدة اليمنى للأعلى مع الضغط على Ctrl وستلاحظ أن الذراع الآخر سيسحب في الاتجاه المعاكس تلقائيا. اسحب دليلا من جهة المسطرة العلوية بمؤشر السهم (وهو عبارة عن خط وهمي) إلى موضع ارتفاع ذراع العقدة اليمنى، وذلك لتستعين به لسحب ذراع العقدة اليسرى لنفس الارتفاع، ثم احذفه بتحديده بالسهم واختيار زر الحذف Delete من لوحة المفاتيح. كرّر المئذنة والقبة عدة مرات مع التغيير في أحجام القباب وطول المآذن. ارسم مستطيلا يصل بين المآذن والقباب وبين الهلال. حدّد جميع الأشكال بسحب المؤشر حولها جميعها ثم من قائمة المسار اختر Union. يمكنك أن تعدل في العقد بين الأشكال إلى عقد ناعمة عن طريق اختيار Make selected nodes smooth من الشريط العلوي لأداة التحير، ثم حركّها يمينا ويسارا لجعل الشكل أكثر انسيابية. رسم الخلفية والزخارف نضيف خلفية للبطاقة ونعيدها لخلف الهلال، ونلوّنها من لوحة التعبئة والحدود أو من شريط الألوان السفلي باللون المناسب. اجعل شكل الهلال والمساجد شفافا عن طريق خيار Opacity من لوحة التعبئة والحدود وأعطه القليل من الضبابية blur ولتكن القيمة 2 ولوّنه باللون الأسود. كرّر الشكل وأزل الضبابية واجعل الشفافية مئة مع تلوينه باللون الأبيض وتحريكه قليلا للأعلى بحيث يظهر الظل تحته. في الطرف السفلي الأيمن للخلفية ارسم مربعا بالضغط على Ctrl أثناء الرسم، ثم كرّر المربع مجددا وقم بتدويره مع الضغط على Ctrl إلى أن يعطينا شكل المعين. كرّر كلا المربعين وضعهما جانبا حيث سنعود لهما بعد قليل. حدّد المربعين الأصليين ومن تبويب رسم الحد Stroke paint ضع لهما حدودا، ومن تبويب سمة الحد Stroke style اختر العرض المناسب. بينما كلا المربعين محدّدين حولهما إلى مسار من خيار Stroke to path من قائمة المسار، ثم قم بتوحيدهما عن طريق خيار Union من قائمة المسار. عد للمربعين الذين تركناهما جانبا وقم بتوحيدهما عن طريق Union. من لوحة المحاذاة والاصطفاف حاذ المربعين المعبأين مع المربعين الأصليين عاموديا وأفقيا. حدّد كلا الشكلين الموحدين ومن قائمة المسار اختر أمر الفرق Difference. كرّر الشكل الناتج وصغره بأسهم التحجيم عن طريق الضغط على Ctrl+Shift للمحافظة على تمركزه وسط الشكل الأول وللمحافظة على أبعاده. ثم من قائمة المسار قم بتجزئة الشكل الذي كرّرته وصغرته عن طريق خيار Break apart ثم قم بتوحيد الشكل المجزأ توًا، ليتكون لنا قطعتين إحداهما مفرغة والأخرى معبئة. لوّن كلتا القطعتين بلون مناسب للخلفية. قم بتجميع القطعتين بتحديدهما ثم بالزر الأيمن تختار Group. اختر الشكل المجمع أولا ثم الخلفية تاليا ومن لوحة المحاذاة والاصطفاف اختر محاذاة حوافهما من جهة اليمين. كرّر الشكل مجددا واحذف الشكل الأوسط من الشكل المكرّر بعد فك تجميعه عن طريق Ungroup من الزر الأيمن. ليتم صف الأشكال بشكل متناسق، فعّل من الأعلى خيار الالتقاط والكبس Enable Snapping ومنه فعّل خيار Snap cusp node لتلتقط الأشكال بعضها البعض من حواف العقد الحادة. قم بتجميع جميع الأشكال المكرّرة في مجموعة واحدة وتأكد من كونها داخل حدود الخلفية، إن لم تكن كذلك عدل في حجم مجموعة الزخارف بما يتناسب مع الخلفية. كرّر المجموعة واخترها -أي المجموعة المكرّرة- ثم حدّد الخلفية ومن شريط المحاذاة قم بمحاذاتهما من حوافهما العلوية. كرّر الخلفية ولوّنها بلون مختلف، وقم بتصغيرها من الأعلى مع الضغط على Shift أثناء التصغير لتصغر من الجانبين بشكل متساوٍ، ثم أعدها خلف الهلال من الشريط العلوي. اختر من تبويب التعبئة Fill التدرج الشعاعي Radial gradient ثم من نفس التبويب اختر تعديل التدرج Edit gradient. ستظهر ثلاث عقد، الوسطى تمثل لون التدرج الداخلي والجانبيتين تمثلان لون التدرج الخارجي. أزل الشفافية من لون التدرج الخارجي بتحديد العقدة وإعطاؤها لونا متناسقا. بأداة الكتابة Text tool سنكتب العبارة التي نرغب بها، ومن الشريط العلوي للأداة سنختار نوع الخط وحجمه وغيرها من الخيارات، مع إمكانية تكبير وتصغير الخط عن طريق الأسهم. لوّن النص باللون الأسود وأعطه الشفافية والضبابية المطلوبة. كرّره ولوّنه باللون الأبيض وحرّكه بحيث يظهر الظل تحته. قم بتجميع جميع أجزاء البطاقة في مجموعة واحدة. حتى تكون بطاقتنا جاهزة لنشرها لمعارفنا عبر وسائل التواصل، اختر Export PNG image من قائمة الملف File لتصدير الصورة بصيغة PNG لتظهر لوحة التصدير على يمين الشاشة. من نفس اللوحة اختر تبويب Selection ليقوم بتصدير ما تم اختياره فقط، ثم حدّد البطاقة المجمعة. اختر عبارة Export as من لوحة التصدير. في النافذة المنبثقة حدّد المكان الذي ستحفظ فيه البطاقة واكتب في خانة الاسم اسمها وامتدادها ثم اختر زر الحفظ Save. ثم من لوحة التصدير اختر أمر التصدير Export. الآن صارت البطاقة جاهزة للإرسال، ويمكنك بخطوات مشابهة إبداع المزيد من البطاقات.
    2 نقاط
  2. شريط أدوات الإدارة في ووردبريس هو ذاك الشريط الرفيع الأسود التي يظهر في أعلى الصفحة في موقعك، ويحتوي على قوائم وروابط تُشير عادةً إلى صفحاتٍ معيّنة في لوحة التحكم مثل تعديل المنشورات، وصفحة حساب المستخدم، وتخصيص القوالب والمزيد. بغض النظر عن الميزات المفيدة لشريط الأدوات، لكن قد يصبح مزعجًا وخصيصًا عندما لا تريد منح جميع المستخدمين وصولًا إلى لوحة التحكم، أو لأنك لا تحب وجود مستطيل أسود أثناء تصفحك لموقعك. لكن شريط الأدوات هو جزءٌ مهم لمدير ووردبريس ويمكن أن يكون مفيدًا جدًا بعد تخصيصه بشكلٍ ملائم لكي يوفر وصولًا سريعًا إلى أقسام الموقع وإلى معلومات محددة. سأريك كيف تُدير شريط أدوات ووردبريس، عبر إزالته لمستخدمين معينين، أو إضافة روابط وقوائم جديدة، أو تخصيص مظهره. إزالة شريط أدوات الإدارة قد تود في بعض الأحيان أن تُزيل شريط الأدوات من واجهة موقعك، إذ تستطيع إخفاءه لجميع المستخدمين أو لمستخدمين أولي دورٍ (role) محدد. السطر الآتي عندما تُضيفه إلى ملف functions.php (ولا تنسَ أن تستعمل قالبًا فرعيا child theme) سيحذف شريط الأدوات لجميع مستخدمي الموقع: <?php show_admin_bar( false ); ?> يجب على الدالة show_admin_bar أن تستدعى مباشرةً عند تحميل الإضافة ولا حاجة إلى استدعائها من دالة مرتبطة (hooked) بالحدث (action) المسمى init. الحالة الأكثر شيوعًا هي إخفاء شريط الأدوات بناءً على امتيازات أو دور المستخدم. ستخفي الشيفرة الآتية شريط الأدوات لكل المستخدمين ما عدا المدراء والمحررين: <?php /** * Remove WordPress Toolbar for subscribers */ function myplugin_remove_admin_bar() { if ( ! current_user_can( 'publish_posts' ) ) { show_admin_bar( false ); } } add_action( 'plugins_loaded', 'myplugin_remove_admin_bar' ); ذكرتُ قبل قليل أنَّه لا يُشترَط أن تستدعى الدالة show_admin_bar عبر دالة مرتبطة بحدثٍ ما. ولهذا قد تتساءل لماذا أضفناها إلى الحدث plugins_loaded؟ إن لم نفعل ذلك في هذه الحالة، فستُظهِر ووردبريس رسالة الخطأ الآتية: Fatal error: Call to undefined function wp_get_current_user() أما لو كنتَ تستدعي الدالة current_user_can()‎ من داخل ملف functions.php في قالبٍ ما، فعليك أن تربط (hook) تلك الدالة بحدث after_setup_theme. هذا المثال مشابه كثيرًا للمثال السابق إلا أنَّه يعمل في القوالب: <?php /** * Remove WordPress Toolbar for all users except admins and editors * */ function mytheme_remove_admin_bar() { if ( ! current_user_can( 'publish_posts' ) ) { show_admin_bar( false ); } } add_action( 'after_setup_theme', 'mytheme_remove_admin_bar' ); إذا أردت أن تكون الشيفرة السابقة قابلة لإعادة الاستخدام، فمن المفضل ربط الدالة إلى الحدث after_setup_theme دائمًا. منذ الإصدار 3.1، وفَّرَت ووردبريس المُرشِّح (show_admin_bar (filter، لذلك أصبحت لدينا طريقة أخرى لأداء نفس المهمة. فلو أردنا مثلًا إخفاء شريط الأدوات من جميع المستخدمين بسطرٍ وحيد: <?php add_filter( 'show_admin_bar', '__return_false' ); ?> وهو مماثل تمامًا للأسطر الآتية: <?php /** * Remove WordPress Toolbar for all users * */ function myplugin_remove_admin_bar(){ return false; } add_filter( 'show_admin_bar' , 'myplugin_remove_admin_bar' ); يمكنك أيضًا إظهار أو إخفاء شريط الأدوات بناءً على امتيازات المستخدم: <?php /** * Remove WordPress Toolbar for users not allowed to publish posts * * @param bool $show_admin_bar Whether the admin bar should be shown */ function myplugin_remove_admin_bar( $show_admin_bar ) { if( current_user_can( 'publish_posts' ) ){ return $show_admin_bar; } else{ return false; } } add_filter( 'show_admin_bar' , 'myplugin_remove_admin_bar' ); سيَظهَر شريط الأدوات -في المثال السابق- إلى المدراء والمحررين فقط (الذين يستطيعون النشر publish_posts). هذا كل ما عليك معرفته إن أحببت إزالة الشريط، لكن ماذا لو أردت أن تستخدم شريط الأدوات لإضافة ميزاتٍ جديدةٍ إليه؟ تخصيص شريط الأدوات الصنف WP_Admin_Bar يتحكم في شريط الأدوات، وعبره نستطيع إضافة أو حذف عناصر القائمة أو مجموعات من العناصر. سنستخدم الدوال الثلاث الآتية في أمثلتنا القادمة: ()add_node ()add_group get_node()‎ تُعرَّف القوائم الافتراضية في ملف ‎/wp-includes/admin-bar.php، وبعض تلك القوائم متوفرة لجميع المستخدمين الذين سجلوا دخولهم، مثل قائمة "شعار ووردبريس" (التي فيها بعض الروابط التعليمية)، وقائمة "حسابي (التي تُظهِر بعض الروابط المتعلقة بالمستخدم الحالي)، وقائمةٌ باسم الموقع (التي توفر روابط سريعة للوحة التحكم). لكن ووردبريس تعطينا القدرة على إضافة قوائم مخصصة وروابط إضافية ومعلومات نصية وحقول للنماذج (forms). لن أشرح هنا طريقة إضافة العناصر إلى شريط الأدوات، لكنني سأريك مثالين عمليين لكيفية تخصيص الشريط، وسأبدأ بتحديثٍ بسيطٍ لقائمة "حسابي". كيفية إضافة عناصر جديدة إلى قائمة موجودة مسبقا عندما يكون هدفنا هو إضافة عناصر جديدة إلى شريط الأدوات بناءً على امتيازات المستخدم، فعلينا تمرير مُعامل (argument) إلى الدالة التي ستُستدعى ألا وهو نسخةٌ من كائن WP_Admin_Bar. يمكن أن ترتبط الدالة بالحدث admin_bar_menu كما هو موضَّح في المثال الآتي: <?php function myplugin_customize_toolbar( $wp_admin_bar ){ // your code here } add_action( 'admin_bar_menu', 'myplugin_customize_toolbar', 999 ); ذكرتُ سابقًا في هذه المقالة أننا نستطيع بناء قوائم جديدة بالإضافة إلى إضافة روابط إلى قوائم موجودة مسبقًا. سنتيح للمستخدم -في المثال الآتي- رابطًا سريعًا إلى موقعه الإلكتروني وذلك بإضافة عقدة (node) جديدة إلى قائمة "حسابي". عندما يتم تحميل الملف admin-bar.php، فستُنشَأ مجموعةٌ جديدةٌ من العقد (nodes) باسم user-actions التي ستُضاف إلى قائمة my-account، هذه المجموعة هي المجموع الرئيسية التي ستُضاف إليها أيّة روابط لتظهر في تلك القائمة الفرعية. وظيفة الشيفرة الآتية هي إضافة رابط إلى المجموعة: <?php /** * Customize WordPress Toolbar * * @param obj $wp_admin_bar An instance of the global object WP_Admin_Bar */ function myplugin_customize_toolbar( $wp_admin_bar ){ $user = wp_get_current_user(); if ( ! ( $user instanceof WP_User ) ){ return; } $my_account = $wp_admin_bar->get_node( 'my-account' ); if( ! empty( $user->user_url ) && $my_account ){ $wp_admin_bar->add_node( array( 'parent' => 'user-actions', 'id' => 'user-url', 'title' => '<span class="user-url">' . __( 'My Website' ) . '</span>', 'href' => esc_url( $user->user_url ) ) ); } } add_action( 'admin_bar_menu', 'myplugin_customize_toolbar', 999 ); في البداية، حصلنا على كائن ‎‎$current_user‎ ثم تحققنا أنَّه نسخةٌ من صنف WP_User، ثم حصلنا على كائن العقدة my-account، الذي يُشير إلى قائمة "حسابي" الموجودة على الجانب الأيسر من شريط الأدوات (أو الجانب الأيمن إن لم تكن تستخدم النسخة العربية من ووردبريس). في النهاية نتحقق من وجود الحقل user_url وتوفر كائن العقدة، ثم سنضيف user-url إلى القائمة. الدالة السابقة ستولد شيفرة HTML الآتية: <li id="wp-admin-bar-user-url"> <a class="ab-item" href="http://example.com"> <span class="user-url">My Website</span> </a> </li> القائمة الناتجة موضحة في الصورة الآتية: مثال متقدم: قوائم شرطية، وأنواع مقالات مخصصة والمزيد تتوفر بعض قوائم شريط الأدوات في صفحاتٍ معيّنة فقط، على سبيل المثال، قائمة "تحرير المقالة" (Edit post) التي توفر رابطًا سريعًا لتعديل صفحة المنشور (post) أو الفئة (taxonomy) الحالية تظهر فقط في صفحات المنشورات وأرشيفات الفئات. وقد يوحي ما سبق لنا بفكرةً ألا وهي إظهار عناصر القائمة في شروطٍ معينة، الشرط في المثال الآتي يعتمد على امتيازات المستخدم. قد نود إظهار قائمة لمحرري الموقع تحتوي على مجموعة من الروابط التي تُشير إلى صفحات في لوحة التحكم التي تحتوي على المنشورات التي تنتظر النشر (رابط لكل نوع من أنواع المنشورات). ستستفيد المواقع التي فيها أكثر من محرر كثيرًا من مثل هكذا قائمة، وذلك عندما يكتب المستخدمون مقالاتٍ (أو منشورات مخصصة) متوقعين أن تتم مراجعتها للنشر. لنعد الآن إلى دالتنا ولنضف الشيفرة الآتية: <?php /** * Customize WordPress Toolbar * * @param obj $wp_admin_bar An instance of the global object WP_Admin_Bar */ function myplugin_customize_toolbar( $wp_admin_bar ){ $user = wp_get_current_user(); if ( ! ( $user instanceof WP_User ) ){ return; } $my_account = $wp_admin_bar->get_node( 'my-account' ); // Add a custom link to My Account menu if( ! empty( $user->user_url ) && $my_account ){ $wp_admin_bar->add_node( array( 'parent' => 'user-actions', 'id' => 'user-url', 'title' => '<span class="user-url">' . __( 'My Website' ) . '</span>', 'href' => esc_url( $user->user_url ) ) ); } if( current_user_can( 'editor' ) ){ // Add a new node to the Toolbar // The link points to the pending posts admin page $wp_admin_bar->add_node( array( 'id' => 'editor-menu', 'title' => '<span class="ab-icon"></span><span class="ab-label">' . __( 'Pending posts' ) . '</span>', 'href' => admin_url( 'edit.php?post_status=pending' ) ) ); // Add group of links $wp_admin_bar->add_group( array( 'parent' => 'editor-menu', 'id' => 'editor-actions' ) ); // Get post types $cpts = (array) get_post_types( array( 'show_in_admin_bar' => true ), 'objects' ); foreach ( $cpts as $cpt ) { if ( ! current_user_can( $cpt->cap->publish_posts ) ) continue; // Get pending posts and post types $posts = get_posts( array( 'post_type' => $cpt->name, 'post_status' => 'pending' ) ); $num = count( $posts ); $title = $num . ' ' . $cpt->label; // Add a new link for each post type $wp_admin_bar->add_node( array( 'parent' => 'editor-actions', 'id' => 'edit-' . $cpt->name, 'title' => $title, 'href' => admin_url( 'edit.php?post_status=pending&post_type=' . $cpt->name ) ) ); } } add_action( 'admin_bar_menu', 'myplugin_customize_toolbar', 999 ); أولًا تحققنا إن كان المستخدم الحالي محررًا، فإن كان الأمر كذلك، فستُضاف القائمة الرئيسية editor-menu، ثم سنضيف المجموعة editor-actions مع ضبط أنها ستكون قائمة فرعية للقائمة الرئيسية editor-menu. هنا يأتي الجانب المسلي: الدالة get_post_types تولد مصفوفة بكائنات أنواع المنشورات المخصصة ثم سنتحقق إن كان المستخدم الذي سجل دخوله له امتيازات التحرير على كل نوع منشورات مخصص (أي أنَّ المستخدم قادر على نشر المنشورات publish_posts) ثم سنحصل على مصفوفة لكل المنشورات التي تنتظر النشر في نوع المنشورات المخصص ونحصي عددهم. في النهاية، سنضيف عقدة (أو عنصر) إلى مجموعة editor-actions. وسيُشير كل رابط في تلك المجموعة إلى صفحة تحرير المنشورات التي تنتظر النشر. وإذا أردت أن تخصص طريقة عرض القائمة بإضافة أيقونة من مجموعة، فأضف الشيفرة الآتية إلى إضافتك (plugin) أو إلى ملف functions.php: <?php /** * Prints style element */ function myplugin_custom_css() { $output = '<style> wpadminbar wp-admin-bar-editor-menu .ab-icon:before { content: "\f322"; top: 2px; } </style>'; echo $output; } add_action( 'wp_head', 'myplugin_custom_css' ); ربطنا الدالة السابقة إلى الحدث المسمى wp_head التي -أي الدالة- ستطبع عنصر <style> في ترويسة (head) الصفحة. أعلم أنَّ هذه ليست أفضل طريقة عند تضمين ملفات الأنماط في مستند، لكننا نضيف هنا سطرًا وحيدًا، ولن يكون تحميل ملف CSS كامل خيارًا عمليًا. لكن إن كنت تريد أن يبدو شريط الأدوات كباقي موقعك، فعليك أن تعيد تعريف الأنماط الموجودة في ‎/wp-includes/css/admin-bar.css ثم تُضمِّن الأنماط الخاصة بك. الخلاصة إذا تركت شريط الأدوات كما هو، فقد يبدو لك غير ضروري وأنَّه شيءٌ قبيحٌ قابعٌ في أعلى صفحات موقعك، لكن إن فكرت في إمكانية الاستفادة منه بعد تخصيصه، فسيصبح أداةً مهمةً ومفيدةً ومرنةً، سواءً لمالكي الموقع أو للمستخدمين الذين يشاركون به. هل تستخدم شريط الأدوات في مواقعك؟ هل أضفت قوائم جديدة أو وظائف متقدمة له من قبل؟ هل لديك أيّة أفكار أحببت تطبيقها عليه لكن لم تفعل ذلك بعد؟ شاركنا بذلك في التعليقات. ترجمة -وبتصرّف- للمقال Customizing (or Removing) the WordPress Admin Toolbar لصاحبه Carlo Daniele.
    1 نقطة
  3. هل أنت مهتم بتعلم PHP وبناء قوالب وملحقات خاصة بك على ووردبريس؟ أو ربما أنت مُهتمّ بتعلّم القليل الذي يُمكنك من إدخال التّعديلات التي تحتاجها على مواقعك ومدوّناتك التي تعتمد على ووردبريس. أيّا كان وضعك، هناك أمور يجب عليك أن تعرفها قبل أن تغوص في مجال تطوير ووردبريس. سنحاول في هذا المقال إعطاءك فكرة واضحة عليها. كيف يعمل ووردبريس؟ لنفهم ماذا وكيف يمكننا التطوير في ووردبريس، سنلقي أولا نظرة سريعة على آلية عمل ووردبريس. يتكون ووردبريس من ثلاثة عناصر رئيسية: النواة الأساسية والقوالب والمُلحقات. تحتوي النواة على جميع الوظائف الأساسية التي تشكل نظام إدارة المحتوى لووردبريس، وهذه الشيفرات البرمجية تتضمن كل شيء من البنية التحتية (backend) للإدارة إلى دوال جدولة المشاركات والتأكد من قوة كلمة المرور والسماح بإنشاء مستخدمين وغيرها. في حين أن النواة الأساسية (core) مسؤولة عن البنية التحتية للموقع وكيفية التعامل معها، فإن القوالب مسؤولة عن الواجهة الأمامية للموقع وكيفية ظهوره. نستخدم إدارة ووردبريس (WordPress admin) لإنشاء المشاركات والصفحات وبقية محتوى الموقع، وأما بالنسبة لكيفية ظهور هذه الأشياء للزائر فهو أمر متروك للقالب theme، لذلك فإن هذا سيعطيك قوة كبيرة للتحكم في موقعك، فقد ترغب بتثبيت وتفعيل القوالب الموجودة أو حتى تطوير قوالبك المخصصة. أبسط طريقة لوصف المُلحقات plugins هي أنها توفر وظائف إضافية للووردبريس، ولفعل ذلك، قد تعدّل المُلحق الشيفرة البرمجية للواجهة الأمامية أو البنية التحتية للموقع، وأبسط مثال لذلك هي المُلحق الذي يضيف زر لتغريدة تويتر، وقد تُنشئ أيضا صفحة إعدادات جديدة في البنية التحتية لقائمة الإدارة والتي ستمكنك من إعداد بعض الخيارات الافتراضية لتغريدة المستخدم ويمكنها إضافة نفسها إلى الواجهة الأمامية للموقع، والتي سيكون موقعها في الغالب تحت التدوينة (post). مجالات التطوير بقدر تقدمك في تطوير ووردبريس، ستتمكن من تطوير أي واحدة من المكونات الرئيسية المذكورة أعلاه بالإضافة إلى تطبيقات مستقلة بمساعدة REST API الجديدة وسنذكر المزيد عن هذا الموضوع بعد قليل. مهما كان ما تريد فعله مع ووردبريس، أنصحك باتباع منهج في دراستك، هذه القائمة ستساعدك على التعرف على الأنظمة التي تحتاج إلى معرفتها قبل بدء تعلمك المزيد حول المجال الذي اخترته: القوالب المُلحقات REST API النواة القوالب إن تعلم كيفية عمل القوالب وتطويرها سيسمح لك باحتراف إنشاء المواقع بدءا من المواقع الصفحة الواحدة إلى مواقع المحتوي الحيوي الثقيل، وستسمح لك أيضا بالحصول على المزيد من العملاء (إذا كان هذا ما يهمك) أو حتى بيع القوالب تجاريا. يوجد العديد من مطوري القوالب الناجحين في أسواق مثل Themeforest و Mojo Marketplace وغيرها. ففي وقت كتابة هذا المقال، أشهر قالب على موقع Themeforest تم بيع 1377 نسخة منه في أسبوع أي أكثر من $81,000 في أسبوع واحد فقط! يمكنك الحصول على الكثير من الأموال إذا كنت تستطيع تطوير قالب مميزة. على الرغم من أن هذا المبلغ لا يحققه جميع مطوري القوالب، وربما لن تصبح مليونيرًا بين عشيّة وضحاها من إنشاء القوالب، لكن يمكنك الحصول على مبلغ مالي جيد من القوالب إذا كنت تقوم بالأمر بالشكل الصحيح. إذا أردت رؤية بعض الأمثلة عن القوالب الشهيرة، فألق نظرة على الأسواق التي ذكرناها أعلاه، أو على قسم قوالب ووردبربس حيث جميع القوالب مجانية، فالكثير من مطوري القوالب يصدرون أعمالهم الأولى في هذا القسم. يمكنك تعلم كيفية إنشاء قوالب ووردبريس في أكاديمية حسوب من خلال سلسلة الدروس مدخل إلى تطوير قوالب ووردبريس. الملحقات plugins بطريقة ما، تعتبر المُلحقات شريان حياة ووردبريس، فهي تحوله إلى كل شيء من منتدى إلى شبكة اجتماعية أو منصة للتجارة الإلكترونية وغيرها باستخدام ضغطة زر واحدة، فالمُلحقات تعطيك تحكمًا كاملًا بجميع جوانب نظام ووردبريس، وتسمح لك بتعديل ما تشاء، وسيساعدك هذا كثيرا عند إنشاء مواقع ووردبريس للعملاء. كما هي الحال مع القوالب، فالمُلحقات تملك أيضا أسواقا وفي العادة يتم إدارتها من نفس الشركات التي تدير أسواق القوالب. يعتبر سوق CodeCanyon على سبيل المثال أكبر سوق للملحقات حيث يملك أكثر من 4000 ملحق متاحة للشراء. على الرغم من أن المبيعات ستكون أقل من القوالب إلا أنه يمكنك ربح الكثير إذا أنشأت ملحقًا جيدًا. يملك موقع ووردبريس قسمًا للملحقات المجانية ويحتوي على أكثر من 40000 ملحق، وهو بذلك مصدر كبير للأدوات والإلهام والأمثلة على الشيفرات البرمجية المميزة (والشيفرات البرمجية السيئة للأسف). يمكنك تعلم كيفية إنشاء ملحقات وإضافات ووردبريس في أكاديمية حسوب من خلال سلسلة الدروس مدخل إلى برمجة إضافات ووردبريس. ما بين WordPress.org و WordPress.com لقد أُطلق نظام ووردبريس بطريقتين مختلفتين، حيث كانت الأولى عن طريق WordPress.com؛ أمّا الثّانية، فعبر استخدام WordPress.org، وهذا نظرًا لإمكانيّة احتساب ووردبريس موقعًا للإنترنت، ومنصّة أعمال في آنٍ واحد، حيث يمكنك إنشاء حساب مجّاني في WordPress.com، والحصول على نسخة مُستضافة من نظام ووردبريس لخدمة موقعك، بحيث ستتحمل شركة الاستضافة مسؤوليّة صيانة الخادم وتثبيت ووردبريس عليه، ممّا يوفر عليك بعض العبء، ويتيح لك التّركيز على إنشاء المحتوى. تجني WordPress.com أرباحها عبر تقاضيها لأموال مقابل ترقيتها للمزايا، فعلى سبيل المثال إذا رغبت في استخدام اسم النّطاق الخاصّ بك في WordPress.com، فستحتاج إلى دفع القليل من الرسوم، وهناك الكثير من الشّركات التي تدفع لمنصّة WordPress.com لأجل استضافة مواقع ووردبريس ضخمة، مثل: بي بي سي أمريكا (BBC America)، ومجلة نيويوركر (The New Yorker Magazine)، ومدونة ستار وورز (Star Wars) الرّسمية. بسبب حاجة ووردبريس لدعم مختلف أنواع وأحجام المواقع، تمتلك منصّتها العديد من القيود المتعلّقة بتخصيص المواقع على نحو شخصيّ، فهناك عدد محدود من القوالب التي تتحكم بتنسيق ومظهر المواقع، كما يوجد عدد قليل من الإضافات التي تُعزّز من أداء وظائفه؛ أمّا WordPress.org فهو الموقع الرّسمي لنظام إدارة المحتوى ووردبريس الذي تستضيفه بنفسك. نقصد باستضافة ووردبريس عمليّة تنزيل نسخة من برنامج ووردبريس، وتثبيته على خادم إنترنت، والذي هو بالمقابل عبارة عن حاسب يستخدم برمجيّات خاصّة تسمح له بتوفير الوصول إلى مواقع الإنترنت المُخزّنة به لجميع المستخدمين على الإنترنت، حيث يمكن لهذا الخادم أن يكون مجرّد حاسب عتيق مُلقى في مكان ما بمنزلك، أو قد يكون مركز بيانات متطوّر، ولك حريّة اختيار الخادم المناسب لموقعك حسب تفضيلك، إذ تتيح استضافتك لنظام ووردبريس بنفسك إنشاء موقع إنترنت تمتلك فيه كامل الحريّة في التّحكم؛ بالمقابل، ستقع عليك مسؤوليّة إعداد وتثبيت نظام ووردبريس، وصيانته بنفسك. REST API ستستخدم REST API لاحقا عندما تحترف تطوير القوالب والمُلحقات، ونظريا ستكون قادرا على استخدامها إذا كانت لديك خبرة في البرمجة بلغة أخرى مثل جافا أو روبي. تعتبر REST API جديدة نسبيا وتسمح لك بإنشاء تطبيقات حقيقية بالاعتماد على ووردبريس، وهذا يتضمن تطبيقات أندرويد وأيفون وغيرها. أفضل طريقة لشرح هذه الميزة هي عن طريق مقارنتها بمواقع مثل تويتر أو انستغرام، لا شك أنك قد رأيت تغذية تويتر معروضة على موقع أحدهم، ولإضافة هذه الميزة إلى موقعك لن تحتاج إلى معرفة كيفية عمل نواة شيفرة البرمجية الخاصة بتويتر، كل ما تحتاجه هو القليل من الشيفرات البرمجية التي تقول: "من فضلك استرجع آخر خمسة من تغريداتي." وسيتعامل تويتر مع الباقي وسيرجع لك بيانات آخر خمسة تغريدات التي طلبتها، وبعد ذلك يمكنك استخدام HTML و CSS لعرضها. وهذا بالضبط ما يفعله REST API لووردبريس، يمكنك الاتصال بأي موقع وطلب منه آخر خمسة مشاركات فيها، ويمكنك أيضا القيام بأكثر من ذلك: يمكنك إنشاء/حذف المستخدمين وتعديل الفئات وغيرها (بالطبع، تحتاج إلى الاستيثاق قبل استخدامها)، هذا يعني أنه يمكنك استخدام ووردبريس كمستودع للمعلومات وبناء واجهة أمامية وبنية خلفية باستخدام نظام مختلف تماما. النواة ساهم في تطوير ووردبريس مجتمع من الآلاف المتطوعين حول العالم، حيث أنه يعمل 471 شخص على الإصدار 4.4 من ووردبريس، والعديد من الأشخاص الآخرين يعملون على جوانب مختلفة من ووردبريس، من الترجمة وتطبيقات الويب إلى الإتاحة (accessibility) والدعم. في الحقيقة، يمكنك الاشتراك معهم الآن، فبينما تحتاج إلى بعض الخبرة للمشاركة في برمجة نواة ووردبريس إلا أنه يمكنك المساهمة في تحديد المشاكل والأخطاء والتأكد منها وتقديم الأفكار في أي وقت باستخدام WordPress Trac، وهو المكان الذي يمكنك من متابعة تطوير شيفرة نواة ووردبريس. إذا وجدت علة (خطأ - bug) يمكنك إرفاقها بالشيفرة المناسبة للتخلص منها، وبعد عدة مراجعات وتدقيقات سيتم استخدام شيفرتك البرمجية إذا كانت مناسبة، وهذه هي أفضل طريقة للمشاركة في تطوير النواة. تطوير ووردبريس: ماذا تحتاج أن تتعلمه يجب أن تعتاد على العمل على مجموعة محددة من الأدوات حتى تتمكن من تطوير ووردبريس. إن عملية التعلم لا تنتهي بالنسبة إلى أي مطور جيد، سوف أعرض عليك هنا حزمة للبداية كما سأريك بعض الأدوات المتقدمة التي قد تحتاج إليها لاحقا عندما تريد أن تتعلم المزيد. الحد الأدنى من المتطلبات لتطوير الووردبريس هي HTML و CSS و PHP، بالإضافة إلى هذه اللغات ستحتاج إلى جافا سكربت و MySQL في مرحلة ما، عندما تتقن هذه اللغات يمكنك الانتقال إلى أشياء أخرى مثل LESS/SASS و Coffeescript و XML و JSON وغيرها، لكن هذه الأشياء لا تعتبر ضرورية لتطوير ووردبريس، لكن إذا عرفتها سيجعل حياتك أسهل كمطور وستوسع آفاقك. HTML و CSS أول لغتين يجب عليك تعلمهما هما HTML و CSS، مهما كانت الشيفرة البرمجية التي تكتبها ومهما كانت اللغة التي تستخدمها فستحتاج حتما إلى HTML عند إرسال صفحات الويب إلى المستخدم وإلى بعض CSS لتصميم وتزيين الصفحة. إن HTML مسؤولة عن إعطاء هيكل المواقع. على المستوى الأساسي، هذا يعني أنك ستقرر ما النص الذي يجب أن يكون عنوانًا وما يجب أن يكون قائمة وما الذي يجب أن يكون في رأس أو أسفل الصفحة. أما في المستوى الأعمق، ستقرر قرارات مهمة حول SEO والتحسين (optimization). يُستخدم CSS لتطبيق أنماط لهيكل HTML، أي أنك ستُعرّف لون النص والروابط والمسافة بين الفقرات ومحاذاة الصورة وألوان الحدود وسمكها وغيرها من العناصر عن طريق استخدام شيفرة CSS. إن CSS تتميز بسهولة تعلمها وبصعوبة إتقانها. PHP تحظى PHP بشعبية كبيرة كأشهر لغة سكربتات من جانب الخادوم server-side-، ووفقا للاستطلاع الذي قام به W3Techs، تستخدم PHP في 81.6% من المواقع وهي اللغة التي كُتب بها ووردبريس (وتقريبا أغلب أنظمة إدارة المحتوى الأخرى أيضا) ولذلك فإن معرفة PHP هو أمر ضروري لتطوير ووردبريس. إن معرفتك بـ PHP وحدها، سيجعلك تحصل على أكثر من معرفة بتطوير ووردبريس فقط. إن أهم فرق بين لغات جانب الخادوم عن لغات جانب العميل - مثل HTML - هو أنه يتم معالجتها في الخادوم أولا، ففي HTML، يمكنك كتابة شيفرة برمجية لـ Good Morning وسيرسلها HTML كما هي وسيعرضها على الزوار. أما في لغات جانب الخادوم، فستكتب شيء مشابه لهذا [good [time_of_day، وقبل أن يتم إرسال ذلك الأمر إلى المستخدم، سيعالج الخادوم هذه الأمر حتى يعرف ما يضعه في مكان [time_of_day] حسب الوقت الذي دخلت فيه إلى الموقع، فيمكنك أن ترى "Good day" أو "Good evening". لاحظ أن البيانات التي يستقبلها متصفحك تبقى HTML لكن تمت معالجتها في الخادوم مسبقا، ولاحظ أيضا أن الشيفرة السابقة لم تكن شيفرة PHP بل هي مثال فقط لأعطيك فكرة عن آلية عمل هذه اللغة. كما هو الحال مع جميع لغات البرمجة، فالممارسة والتمرين هي التي تجعلك تبرمج بشكل أفضل، فيمكنك تعلم PHP في غضون بضعة أيام لكنك ستجد نفسك أنك لا تملك أية فكرة عن ما الذي تقوم به، لذلك تحتاج إلى تجربة الأشياء وتخريبها وليس الوقوف دون معرفة ما يجري، وكما يقولون الممارسة تولد الإتقان. جافا سكربت ازداد دور جافا سكربت أهمية على الإنترنت، خاصة مع ظهور أدوات مبنية على جافا سكربت مثل Node و Angular. جافاسكربت تستخدم عادة لإضافة وظائف حيوية للمواقع وللتحميل غير المتزامن. سأعطيك مثال على كل واحد منها. فمثلا لو أردت أن يتم إخفاء نموذج بشكل كامل وأن يظهر ببطء داخل lightbox عندما يضغط المستخدم على زر معين، فيمكنك فعل ذلك باستخدام جافا سكربت بما أنه يمكنه التعامل مع تحريك الرسوم (animation) وربما الوظائف الأخرى، مثل التأكد من أنه تم ملئ النموذج بشكل صحيح قبل إرساله. أما التحميل غير المتزامن فيتم عمله عبر آلية تسمى بـ AJAX، فيمكنك استخدام AJAX للحصول على معلومات من الخادوم وعرضها دون إعادة تحميل الصفحة، وأبسط مثال لذلك هو التمرير اللانهائي (endless scrolling) فعندما يتم تحميل 10 مشاركات وتصل إلى نهاية الصفحة فسيتم عرض 10 مشاركات أخرى وتستمر هكذا. الكثير من المطورين تعلموا جافا سكربت من خلال إطار jQuery، فهو يُستخدم على نطاق واسع في ووردبريس وفي ملايين المشاريع على الإنترنت، وعلى الرغم من أن هذا الأمر جيد لكن ضع في اعتبارك أن جافا سكربت هو أكثر من مجرد jQuery وإن تعلم جافا سكربت كما هو هي فكرة جيدة. MySQL إن Mysql هي لغة تُستخدم للوصول والعمل مع البيانات المخزنة في قاعدة البيانات، يستخدم ووردبريس هذه اللغة كثيرا للتعامل مع البيانات، لكن كمطور، لا تحتاج إلى معرفة الكثير لأن ووردبريس يملك مجموعة من الدوال المساعدة. لكن في بعض الحالات الخاصة، قد تحتاج إلى كتابة استعلام قاعدة البيانات بنفسك أو ربما قد ترغب بتحسين شيء في موقعك، لذلك سيفيدك تعلم أساسيات MySQL. إن العمل مع قواعد البيانات واضح للغاية، فالجدول في قاعدة البيانات يشبه كثيرا جداول بيانات Microsoft Excel، فكل عمود يملك عنوانًا وبيانات مخزنة في الأسطر، ونستخدم MySQL لإضافة وحذف وتعديل واسترجاع البيانات، ربما ترغب بكتابة استعلام MySQL يرجع لك جميع المشاركات التي تحتوي على كلمة "awesome" ولديها أكثر من 8 تعليقات، أو قد ترغب أيضا بإيجاد جميع المستخدمين الذين يملكون اسم "Daniel". مرة أخرى، إن كتابة شيفرة MySQL خام في ووردبريس هو أمر نادر، لكنه يحدث في بعض الأحيان، لذلك فإن فهم كيفية عمل اللغة سيساعدك على كتابة شيفرات أفضل بشكل عام أدوات متقدمة بمجرد أن تتعود على الأقل على استخدام ثلاثة اللغات الأساسية - HTML و CSS و PHP - يمكنك البدء باكتشاف العديد من الأدوات المساعدة، واحدة من الأشياء الأولى التي يميل الناس إلى تعلمها هي LESS و/أو SASS، كلاهما "مجموعات موسّعة" (Superset) لـ CSS، أي أن أي شيفرة CSS صحيح تعتبر صحيحة في شيفرة LESS و SASS، وتكمن أهمية إضافة هاتين اللغتين هو إمكانية استخدام متغيرات ودوال و غيرها في CSS، والذي هو غير ممكن بشكل افتراضي. إن أدوات البناء (Build tools) هو شيء سترغب في اكتشافه عند مرحلة معينة، أفضلها Gulp و Grunt فهذان يمكنهما مراقبة تعديلات الملفات وتنفيذ مختلف المهام عند استيفاء المتطلبات، فعلى سبيل المثال، في أي وقت تعدل فيه ملف SASS يمكنك ترجمته تلقائيا إلى CSS وحفظه إلى ملف معين، أو يمكنك تحسين الصور أو دمج الملفات أو تحميل الحزم الخارجية فجميع المهام الأخرى يمكنك أن تفعلها باستخدام هذه الأدوات. سطر الأوامر أو الطرفية (terminal) هو شيء يجب أن تلقي نظرة عليه. نعم إن استخدام سطر الأوامر قد يبدو مخيفا لكنه ليس كذلك، فبمجرد كتابة بضعة أوامر يمكنك حفظ الكثير من الوقت، فسكربت/أداة مثل WP-CLI يمكنه تثبيت ووردبريس في بضعة ثواني، بما في ذلك تثبيت القوالب والمُلحقات والمحتويات للتجربة والتي لو قمت بها بشكل يدوي ستتطلب الكثير من الوقت والجهد. إن أنظمة االتّحكّم في الإصدارات (Version control) هي من الأدوات المفيدة للغاية فلن تعرف حاجتك إليها إلا لو استخدمتها، فعلى الرغم من أنها وُضعت أصلا للعمل على نفس الشيفرة البرمجية في مجموعات إلا أنه يمكنك استخدامها كحل لإدارة المشاريع والمشاكل والنسخ الاحتياطي في نفس الوقت. ويعتبر كل من SVN و Git الأشهر على الإطلاق، لكن بالنسبة لي، أعتبر أن Git أفضل نظرا لأنه يعمل بشكل أفضل وبسبب Github الذي يوفر خدمة استضافة مستودعات Git على الإنترنت. ووردبريس: بوابتك إلى عالم البرمجة إن أفضل شيء بالنسبة إلى ووردبريس أنه يمكن أن يكون مدخلا لتعلم مهارات تطوير ويب ولغات أخرى. ولقد خضت هذه التجربة شخصيا، فلقد تعلمت أولا البرمجة الموجهة في PHP ثم تعلمت إطار عمل Laravel وأدوات البناء ثم LESS/SASS وأدوات سطر الأوامر وغيرها الكثير. ولقد خضت أيضا في غمار native app باستخدام #C وغيرها من اللغات. بمجرد معرفتك بكيفية عمل كل شيء، ستتعلم المزيد عند إنشاء مشاريع جديدة وكبيرة وكل شيء سيصبح أسهل، فبعد البرمجة كائنية التّوجّه في PHP لن تبذل الكثير من الجهد في تعلم #C لأن دماغك سيتعود على منطقه بطريقة مشابه لتعلم قيادة الشاحنات بعد تعلمك قيادة السيارات، فعلى الرغم من وجود الكثير من الاختلافات لكن بمجرد أن يكون لديك بعض الأساسيات سيسهل عليك التّحكمّ فيه. خاتمة ها قد عرفت الآن ما الذي تحتاجه للبدء في تطوير موقع ووردبريس، وقد تشعر بالإرباك، لكن لا تقلق، فالجميع سيشعر بذلك في هذه المرحلة. تذكّر أمرًا: من المهم أن لا تثبط عزيمتك، فجميع المبرمجين بدؤوا من مكان ما، فالكثير منهم كان سيئا للغاية عندما بدأ، يصارع لفهم المفاهيم الجديدة وشعر بالإحباط، لكنهم لم يستسلموا وكانوا دائما يدفعون أنفسهم للتّعلّم وهذا ما يُميّز المبرمج الجيد من السيئ. ترجمة -وبتصرف- للمقال: WordPress Development for Beginners: Getting Started لصاحبه Daniel Pataki والمقال WordPress.org and WordPress.com من موقع wordpress.org. حقوق الصورة البارزة: Designed by Freepik.
    1 نقطة
  4. قد تكون عملية نقل المحتوى من موقع ووردبريس إلى آخر عمليةً تُضيّع الوقت وتُسبِّب الصداع، إذ لا تستطيع ببساطة نقل الملفات وقاعدة البيانات؛ لا تعمل ووردبريس هكذا! لحسن الحظ، هنالك أداة "استيراد" (Import) و"تصدير" (Export) في ووردبريس، لكن تلك الأدوات -لسوء الحظ- بسيطة جدًا ويلزم تطويرها لكي تلبي احتياجاتك الأخرى. سأشرح في هذا المقال خطوةً بخطوة كيفية نقل ووردبريس من مكانٍ إلى آخر. قبل أن نبدأ: خذ نسخة احتياطية من موقعك قد تكون هنالك خصوصيات لبعض حالات تثبيت ووردبريس ستؤدي إلى عرقلة عملية نقل المحتوى؛ وعلى الرغم من أنَّ هذه المقالة ستتعامل مع بعض الحالات الخاصة (عملية نقل جزء من محتوى ووردبريس تحديدًا)، لكن لا توجد ضمانة أنَّ الخطوات الموضحة هنا ستعمل بسلاسة لكل حالات التثبيت. ومن الغني عن الذكر أنَّك مسؤولٌ وحدك عن موقعك، حتى لو اتبعت هذا الدليل حتى النهاية؛ هنالك أيضًا بعض العمليات التي عليك إجراؤها على قاعدة البيانات اعتمادًا على ما الذي تريد فعله؛ وإذا أخطأتَ وحذفتَ كمية كبيرةً من البيانات فلا تلومن إلا نفسك! أنصحك بتوخي الحذر كثيرًا في هذا الصدد. أنشأتُ نسختين منفصلتين من ووردبريس مثبتتين على الخادوم المحلي لكي أوفر لك صورًا لكل خطوة من الخطوات. ربما قد ترغب في نقل محتواك إلى موقع تجريبي كبداية لتتحقّق من أن العملية ستتم كما هو مخطّط له. في النهاية، أنصحك أن تأخذ نسخةً احتياطيةً لكل الموقع في هذه المرحلة؛ لكنك بالطبع تفعل ذلك بشكلٍ دوري، صحيح؟ (إن لم تكن تأخذ نسخًا احتياطية، فأنصحك بفعل ذلك فورًا). إذا أردت القيام بعملية النقل يدويًا، فتذكر أن تُضمِّن قاعدة البيانات الخاصة بك بالإضافة إلى ملفات الموقع (وذلك لأنها تتضمن الملفات التي رفعتها على موقعك). نسخ الملفات احتياطيا يمكنك إنشاء وتنزيل نسخة ZIP من موقعك عبر FTP؛ وهذا يختلف باختلاف عميل FTP الذي تستخدمه، لكن العملية بسيطة وسهلة التطبيق. تأكد أنَّك تنزل وتحفظ ملف النسخة الاحتياطية المضغوط بشكل آمن، مثَلهُ كَمَثَلِ أيّ نسخةٍ احتياطيةٍ أخذتها سابقًا. نسخ قاعدة البيانات احتياطيا سجل دخولك إلى حسابك في phpMyAdmin واختر قاعدة البيانات التي ثبتت فيها ووردبريس. اضغط على Export في القائمة العلوية، ثم اختر Quick الذي يكون ملائمًا لأغلبية الحالات، لكن إن كان عندك جداول لأكثر من نسخة من ووردبريس في نفس قاعدة البيانات، فاضغط على Custom واختر الجداول التي تريد أخذ نسخة احتياطية منها؛ اترك جميع الخيارات البقية على حالها، وفي النهاية اضغط على Go لتنزيل ملف النسخ الاحتياطي لقاعدة بياناتك (بصيغة sql). إذا جرت الأمور كما هو متوقع، فلن نحتاج إلى النسخة الاحتياطية، لكن من المُستحسن دائمًا أخذ نسخة احتياطية قبل الإقدام على إجراء عملية كالتي سنفعلها. وإن كان في الموقع الذي ستنقل المحتوى إليه بعض المقالات، فيجب أخذ نسخة احتياطية له كذلك. لنبدأ العمل بعد أخذ الاحتياطات اللازمة. تغيير عنوان URL موقع ووردبريس: نقل موقع كامل إذا كنت تفكر في تغيير رابط URL لموقعك أو تريد نقل كل شيء من نسخة إلى أخرى، فاعلم أنَّك قد انتقيت أسهل خيار؛ فأدوات ووردبريس للتصدير (Export) والاستيراد (Import) ستفي تمامًا بالغرض، وليس عليك القيام بأي عمليات معقدة. إليك طريقة نقل جميع محتويات موقع ووردبريس من صفحات وصور وملفات ومنشورات …إلخ. إلى موقع جديد. من الأسهل أن تُنشِئ نسخة ووردبريس جديدة على خادومك الجديد (أو في مكانٍ آخر في نفس الخادوم) ثم تستخدم التصدير/الاستيراد بدلًا من نقل ملفات الضبط. يجب أن تكون نسخة ووردبريس عندك محدثةً إلى آخر إصدار، وإن لم تكن محدَّثةً فعليك ترقيتها أولًا؛ وإن لم تستطع الترقية لسببٍ من الأسباب -مثل الحاجة إلى استخدام إضافة معينة لا تعمل على الإصدارات الحديثة- فيمكن أن تُثبِّت إصدارًا قديمًا، لكن ذلك ليس مستحسنًا لاحتمال وجود مشكلات أمنية في الإصدارات القديمة من ووردبريس. أولا: التصدير من الموقع القديم افتح لوحة التحكم في ووردبريس واضغط على Export (تصدير) من قائمة Tools (أدوات). أبقِ على خيار All content (كل المحتوى) مُفعَّلًا لأنك تريد تصدير كل شيء، ثم اضغط على Download Export File (تحميل ملف التصدير). سيتم إنشاء ملف XML. أبقه في مكانٍ آمن ريثما تنقله إلى الموقع الجديد. ثانيا: تثبيت إضافة الاستيراد تثبيت إضافة WordPress Importer: الآن في موقع ووردبريس الجديد الذي تريد الانتقال إليه، اذهب مرةً أخرى إلى Tools (الأدوات) لكن هذه المرة اختر Import (استيراد). ستظهر لك قائمة بآليات الاستيراد المتوفرة، التي عليك أن تختار WordPress من بينها. اضغط على Install Now ثم انتظر تنزيل وتثبيت الإضافة. عليك بعدها -إن جرت الأمور على ما يرام- أن تضغط على Activate Plugin & Run Importer في الصفحة التي ستظهر لك. يجب أن تكون قادرًا في هذه المرحلة على استيراد ملف XML الذي أنشأتَه في الخطوة السابقة. ثالثا: رفع المحتوى اضغط على Choose File (اختر ملف) واختر ملف XML الذي أنشأتَه في موقعك القديم. اضغط بعدها على زر Upload file and import (رفع الملف واستيراده). رابعا: اختيار المحتوى ستُعطى خيارًا لإسناد المحتوى الذي سيتم استيراده إلى مستخدمين موجودين في موقعك الجديد (إذا كان لديك حساب مستخدم في الموقع القديم والجديد، فيمكنك إسناد مقالاته في الموقع القديم إلى حسابه في الموقع الجديد)، أو يمكنك إنشاء المستخدمين إما بأن تكون لهم نفس أسمائهم القديمة أو أن تُنشِئ واحدًا جديدًا تختاره أنت، وهذا يضمن أنَّ كل المحتوى الذي سيتم استيراده سيُسنَد إلى حساب مستخدمٍ ما موجود في الموقع الجديد. إذا كانت لديك أيّة صور أو ملفات تريد نقلها إلى الموقع الجديد، فعليك بكل تأكيد أن تختار الخيار Download and import file attachments (تنزيل واستيراد المرفقات)، لاحظ أنَّه ليس مفعلًا افتراضيًا. اضغط على زر Submit لإكمال عملية الاستيراد. قد يكون تحميل الصفحة أطول من المعتاد بسبب إنشاء سجلات جديدة في قاعدة البيانات، لكن سينتهي تحميلها حكمًا. انتظر بصبر إلى أن تكتمل العملية وبعدها ستجد أنَّ جميع محتوى موقعك السابق قد تم استيراده إلى موقعك الجديد الذي دبَّت فيه الحياة! نقل جزئي للمحتوى حسنًا، ما سبق كان سهلًا للغاية، لكن إن كنت تتطلع نحو تصدير بعض محتويات موقعك، فللأسف لن تكون أدوات ووردبريس وحدها كافيةً بالنسبة إليك. اختيار All content (كل المحتوى) هو الطريقة الوحيدة لتصدير المرفقات (أي الملفات التي تظهر في قسم Media أو الوسائط)؛ أي لو أردت نقل أجزاء مُحدَّدة من المحتوى بالإضافة إلى الصور المرتبطة بتلك الأجزاء، فأنت هنا أمام خيارين: إما أن تنقل كل المحتوى ثم تحذف الأجزاء التي لا تريدها (وهذه مضيعةٌ للوقت، خصوصًا في المواقع الكبيرة)، أو أن تحاول نقل الملفات وقاعدة البيانات يدويًا، وهذا ما سأريك إياه الآن. سأشرح عملية تصدير وتعديل SQL التي سأريك إياها لغرض ألا وهو نقل المرفقات؛ لكن يمكنك استخدام طريقة مماثلة لها بنقل قاعدة البيانات كلها، وهذا مفيدٌ إذا أردت نقل كل المحتوى لكن ملف XML الناتج كبيرٌ للغاية ولا يمكن رفعه عبر أداة الاستيراد. أولا: اختيار المحتوى الذي تريد تصديره اذهب مرةً أخرى إلى Tools (الأدوات) ثم Export (تصدير). بعد اختيارك للمحتوى الذي تريد تصديره، اضغط على Download Export File. إذا كنت تريد اختيار أكثر من مستخدم على سبيل المثال، أو أكثر من مجال زمني، أو جميع الصفحات (pages) وجميع المنشورات من مستخدم معيّن، فيمكنك العودة إلى هذه الصفحة وإنشاء عدِّة ملفات تصدير. ثانيا: استيراد الملفات المصدرة بعد أن تصبح لديك جميع ملفات WXR XML التي تريد استيرادها، فانتقل إلى الموقع الجديد وثبِّت إضافة WordPress Importer كما رأيت سابقًا. يمكنك رفع ملفات (ملف في كل مرة) كما في الفقرة السابقة وستتم إضافة المحتوى الموجود فيها إلى الموقع الجديد. لكن هذه ليس النهاية، لأنك ستلاحظ عدم وجود أيّة مرفقات (الصور المرفقة على سبيل المثال) في موقعك الجديد. نسخ ملفات الوسائط انتقل إلى مجلد /wp-content/uploads/ في موقعك القديم عبر عميل FTP. سأستخدم هنا مستكشف ملفات ويندوز 10 عميلًا لبروتوكول FTP، لكن أغلبية تطبيقات FTP قادرة على ضغط وتنزيل الملفات. نزِّل ملف ZIP الذي ولَّدته ثم ارفعه إلى موقعك الجديد عبر FTP (أو انسخ الملف والصقه في عميل FTP إن استطعت الوصول إلى كلا الموقعين منه [أي العميل]). يمكنك الآن استخراج جميع الملفات من المجلد المضغوط في مجلد Uploads. لسوء الحظ، هذه ليست آخر خطوة؛ فعلى الرغم من أنَّ الملفات في مكانها الصحيح، لكن ووردبريس لا تعلم عنها شيئًا لأنَّ بيانات تلك المرفقات لم تُنسَخ من قاعدة البيانات. رابعا: تصدير بيانات المرفقات من قاعدة البيانات اذهب إلى phpMyAdmin في موقعك القديم وابحث عن جدول wp_posts (ضع البادئة المناسبة بدلًا من wp_‎). عليك الآن العثور على بيانات المرفقات (أي بيانات الوسائط)، ولهذا استخدم تعليمة SQL الآتية (لا تنسَ تغيير بادئة الجدول إن لزم الأمر) ثم اضغط على Go. SELECT * FROM wp_posts WHERE post_type = “attachment” مرِّر إلى أسفل نتائج الطلبية ثم اضغط على Show all لكي تظهر جميع السجلات ثم اضغط على Check All لاختيارها جميعًا ثم Export لتصديرها. ستتعقد بعض الأمور عند هذه النقطة، لكن لن تواجهك مشكلاتٌ إن تابعت الخطوات بحذافيرها. اختر Custom لإظهار كل الخيارات الممكنة. مرِّر إلى الأسفل إلى قسم Format-specific Options. اختر data. اترك كل شيءٍ على حاله ثم اضغط على Go. خامسا: تعديل ملف SQL هذه الخطوة ضرورية إن كان لقاعدة بيانات موقعك الجديد بادئة مختلفة عن قاعدة بيانات الموقع القديم الذي صدَّرتَ ملف SQL منه. عدِّل ملف ‎.sql الناتج باستخدام محرر نصي مثل Notepad++‎ وابحث عن البادئة القديمة وضع البادئة الحديثة بدلًا عنها. يمكنك تجاهل هذه الخطوة إن كانت بادئة قاعدتَي البيانات متماثلة (أي أنَّ كلا الجدولين هما wp_posts). سادسا: استيراد بيانات المرفقات اذهب إلى قاعدة البيانات للموقع الجديد واعثر على جدول wp_posts (أو ما يكافؤه) ثم اضغط على Import. اضغط على Choose File -اضغط ولا تسحب وتُفلِت، لعدم توفر هذه الميزة في phpMyAdmin- ثم اختر ملف SQL الذي صدَّرتَه. اترك بقية الخيارات على حالها ثم اضغط على Go لتنفيذ الطلبية، ثم سترى رسالة تخبرك أنَّ الطلبية قد نُفِّذَت بنجاح، وسترى حينها المرفقات ظاهرةً في صفحة الوسائط، لكن هنالك خطوة إضافية عليك اتباعها حتى تظهر الصور بشكلٍ صحيح. سابعا: تصدير البيانات الوصفية للمنشورات بشكلٍ مشابه لما فعلناه سابقًا في قاعدة البيانات: اعثر على جدول wp_postmeta في قاعدة بيانات الموقع القديم ثم اضغط على Export. اختر Custom ثم اختر data بدلًا من structure and data كما سبق معنا. عليك هذه المرة العثور على قسم Data Creation Options واختيار REPLACE لخيار function to use when dumping data. اضغط الآن على GO لإنشاء وتنزيل ملف SQL. ثامنا: تعديل ملف SQL أكرر مرةً أخرى أنَّ عليك تعديل البادئة في ملف SQL إن اختلفت بادئة جداول قاعدة البيانات الجديدة عن القديمة. عليك أيضًا البحث عن روابط URL القديمة واستبدال الجديدة بها. تاسعا: استيراد البيانات الوصفية للمنشورات اذهب إلى جدول wp_postmeta (أو أيًّا كانت بادئة الجدول) في قاعدة بيانات الموقع الجديد، ثم استورد ملف SQL المُعدَّل كما سبق. يجب أن تكون مكتبة الوسائط جاهزةً عندك تمامًا، وقادرةً على الاندماج مع المحتوى الذي نقلته سابقًا. خاتمة تهانينا إذا نجحتَ بالمرور عبر كل تلك الخطوات، هذه طريقة التفافية لنقل بعض الصور الخاصة بمنشورات معيّنة. لكن ما تزال هنالك بعض المشكلات الصغيرة مع هذه الطريقة: لو أردت نقل بعض الصور، فعليك اختيار المجلدات يدويًا عند رفعها (أرجو أن تكون الصور التي تريدها مصنفةً حسب التاريخ، وإلا فستأخذ منك هذه المهمة وقتًا طويلًا جدًا!)؛ وقد تواجه بعض المشاكل بتكرار المفاتيح الرئيسية (primary keys) عند نقل جدول wp_posts إن كانت عندك منشوراتٌ في الموقع الجديد. من الجلي أنَّه يجب تطوير عملية التصدير/الاستيراد في الإصدارات المستقبلية من ووردبريس بدلًا من هذه الجلبة بتعديل قاعدة البيانات يدويًا. لكن استعن بالخطوات السابقة إلى أن يحين ذاك الوقت. إن كانت لديك أيّة أفكار أو طرق حول نقل أجزاء من موقع ووردبريس إلى آخر، فأرجو أن تشاركنا إياها بالتعليقات. ولا تتردد بالسؤال عن أيّة مشكلة تواجهك عند تنفيذ الخطوات السابقة، نحن موجودون دائمًا للمساعدة. هل ترغب في امتلاك موقع ووردبريس سريع وآمن؟ احصل على موقع ووردبريس احترافي بالاستعانة بأفضل خدمات الووردبريس على خمسات أنشئ موقع ووردبريس الآن ترجمة -وبتصرّف- للمقال A Step By Step Guide to Moving Content From One WordPress Site to Another لصاحبه Tom Ewer.
    1 نقطة
  5. أنا على وشك إطلاق مشروعي الناشيء ولكني لم أُعلم مُوظِّفي الحالي بعد ولا أعرف ماذا ستكون ردة فعله كيف أخبره بذلك؟
    1 نقطة
  6. السلام عليكم لدي حاسوب شخصي ويندوز 7 نسخة 32بت المشكلة في أداء الحاسوب أنّه بطئ جداً بسبب التقيم لدي 2.6 من النقاط فقط وانا استعمل برامج للرسم وأحتاج لأداء عالي خاصة في نقاط الجرافيك ... هل هناك طريقة لرفع نقاط التقيم؟ شكراً
    1 نقطة
  7. السلام عليكم ورحمة الله وبركاته ماذا سيحدث لو الناس تفرغت جميعا للعمل الحر بما ان الكتب المنتشرة بموقع مستقل تهدف وتحرض الناس علي العمل الحر والتفرغ له ماذا سيحدث لو الناس كلها تفرغت للعمل الحر أكيد سيؤثر علي اقتصاد الدول وسيدمره ما رأيكم يا أخواني
    1 نقطة
  8. يمكنك أن تُقدّم خدمات في خمسات لتحويل ملفات pdf إلى وورد، وعلى اعتبار أن جميع البرامج التي تفعل ذلك لا تُعطي جودة مُرضيّة، فيمكنك هنا أن تستخدم طريقتك السرية، وهي تفريغ النصّ بشكل نصيّ وتسليمه للعميل، اجعل الخدمة لكل كذا مئة كلمة بخمس دولارت. لكن في العموم أخي لا تُراهن على سرعتك في إنجاز شيء ما يمكن للآلة أن تتطور وتنجزه أسرع منك، اقتراحي الأساسي أن تستثمر الوقت في تعلّم مهارات جديدة يُمكن بيعها بأسعار افضل كما تفضلت الأخت هبة بالتوفيق
    1 نقطة
  9. بالطبع يمكنك الاستفادة من مهارتك في الكتابة السريعة سواء بإدخال البيانات أو تفريغ المحتويات الصوتية والمرئية أو البحث على الانترنت، قد تشترك في مواقع الخدمات المصغّرة كموقع خمسات، وإذا كنت تجيد الكتابة على أكثر من برنامج كword, excel ,powerpoint, wordpress فاستغل هذه المهارة في إدخال البيانات إليهم أو تحويل الملفات من برنامج لآخر. وبعد فترة من دخولك مجال العمل الحر عليك بالبحث عن الجديد الذي يضيف لمهاراتك وخبراتك لتوسّع من دائرة عملك أو النشاط الذي يمكنك القيام به، بالتدريب والممارسة ستنتقل من مستوى لآخر. استخدم الشبكات الاجتماعية الاستخدام الأمثل مثل (لنكدإن – فيس بوك ) فهي تساعد على بناء شبكة علاقات جيدة في مجالك وتساعد على التوظيف.
    1 نقطة
  10. لنأخذ بدايةً فكرة عن ما هي نقاط أداء الحاسوب Windows Experience Index الكثير إن لم نقل معظم مستخدمو الحاسوب ليس لهم خبرة تقنية كبيرة في مجال القطع ومواصفاتها والتفضيل فيما بينها، ولا يمكنهم بسهولة البحث عن المتطلبات اللازمة لعملهم اليومي ومقارنة فيما إذا كانت المواصفات التي تمتلكها أجهزتهم الحالية كافية أم أن وقت الترقية قد حان، لتسهيل كل ذلك قدّمت مايكروسوفت مفهوم Windows Experience Index. النقاط Index تُعطي فكرة عن كيفية أداء الحاسب، أو تقييم تجربة الاستخدام المتوقعة بناء على المواصفات الفنيّة لقطع الحاسب، وذلك في مختلف المهام، تصفح الوِب، الأعمال المكتبية، التصميم إلخ.. وبهذه الطريقة يُمكن معرفة متى يحين الوقت لترقية قطع الحاسب، أو أن يبحث المستخدم عن برامج تتوافق مع المُعدّل الذي يتمتع به حاسبه. ويُحدد تقييم الجهاز الإجمالي بناءً على أدنى تقييم لقطعه. كيف يمكن قراءة وفهم هذا الرقم؟ 2: جهاز مناسب للمهام القياسية 3: يمكن تشغيل مزايا ويندوز 7 الأساسية. 5: جهاز قادر على تحمل تعدد المهام وتشغيل كامل مزايا ويندوز 7. 7: جهاز مناسب لأعمال الغرافيك والحمل الثقيل. الآن لتحسين هذا الرقم الطريقة الوحيدة الفعلية هي ترقية قطع الهاردوير، أو ترقية المُشغّلات Drivers المثبتة عليه. مثلا في حالتك الجهاز أداء الجهاز يحقق رقم 2.6 فهذا الرقم لأي قطعة تعود؟ مثلا إلى الرام؟ في هذه الحالة قومي بترقية الرام. وهكذا إذا رغبتِ أرفقِ صورة لقياس الأداء لنقدّم لك نصائح أكثر دقة
    1 نقطة
  11. يجب أولا الفصل بينهما، ومعرفة أساسيات كل مجال منهما، فرغم أن المهارتين تنتميان إلى نفس المجال ألا وهو الإعلاميات أو المعلوميات لكنّ هناك فرقًا شاسعًا بينهما، حيث أن هندسة البرمجيات تتخصص في كل ما هو برمجي صرف، بالاضافة إلى التعامل مع قواعد البيانات، الخوارزميات، الشفرات البرمجية وتفاصيل أخرى كثيرة، أضف إلى ذلك أن المبرمج يتعامل مع مختلف التقنيات، الويب، برامج سطح المكتب، برامج الهواتف الذكية والأجهزة اللوحية، بل وصل التطور إلى برمجة ألواح ورقاقات إلكترونية لتقوم بمهمة معينة تعيّن برمجيا... بالنسبة للشبكات فالأمر مختلف تماما، حيث سينصَبُّ التركيز على ربط مجموعة من الأجهزة لتكون شبكة، او إعداد خادم server سواء محلي أو على شبكة الاتصال، ستتعامل مع العديد من protocols الخاصة بالشبكات، تتعمق في عدة مفاهيم مثل IP،DNS,DHCP... أي أن هذا المجال متعلق بكل ماهو رهين بالشبكات... يمكنك أيضا دراسة شهادات CCNA,CCENT. ولكن دعني أثير انتباهك لنقطة معينة، السؤال في تقرير مصيري أنصحك بتفاديه، لأن الناصح سينصحك حسب ميولاته هو، وانطلاق من قناعات شخصية لديه، فمثلا أنا أحب البرمجة سأقول عليك بالهندسة البرمجية، ولا أعلم ما هي ميولاتك أنت؟ مالذي يثير لديك الشغف بمزاولته؟ أي ابحث أنت عن ما تحبه، واسأل كثيرا قبل الاختيار. على أيٍ أتمنى أن أكون قد وضعتك في الصورة، وإليك بعض الروابط التي من شأنها إيضاح بعض النقاط لك: دروس البرمج على أكاديمية حسوب دروس DevOps على أكاديمية حسوب Which career is more fun, networking or programming? Which one is best: networking or programming?
    1 نقطة
  12. للأسف الشركات المُصعنة للهواتف الذكية تحجب إرسال تحديثاتها إلى الأجهزة التي تمّ ترويتها. وبالتالي بإلغاء الروت يمكن اعادة استقبال التحديثات (في حال توفرها). أيضًا تلغي الشركات المصنعة كفالة الجهاز في حال ترويته! وبإزالة الروت يمكن إرسال الجهاز للشركة في حال وجود عيب في التصنيع. بعض الدول مثل الاتحاد الأوروبي تمنع الشركات من إلغاء كفالة الجهاز لمجرد الترويت.
    1 نقطة
  13. لا يمكنك حذف كوكيز بشكل مباشر من جهاز الحاسوب، بل يمكنك جعل المتصفح يحذفه عن طريق وضع وقت انتهاء هذا الكوكيز في زمن سابق وذلك عن طريق الخطوات التالية: حدد ما إذا كان الكوكيز موجود، وإذا كان كذلك أنشئ كوكيز جديد بنفس الإسم. حدد موعد إنتهاء الكوكيز في وقت سابق عن الوقت الحالي (في الماضي). أضف هذا الكوكيز إلى كائن مجموعة الكوكيز. الشيفرة البرمجية للخطوات السابقة هي التالي: If (Not Request.Cookies("UserSettings") Is Nothing) Then Dim myCookie As HttpCookie myCookie = New HttpCookie("UserSettings") myCookie.Expires = DateTime.Now.AddDays(-1D) Response.Cookies.Add(myCookie) End If افترضنا في المثال أن الكوكيز اسمه UserSettings. للمزيد من المعلومات حول هذه الطريقة أنصحك بالإطلاع على التوثيق الرسمي.
    1 نقطة
  14. أهلاً بك للأسفل لايوجد خطوات تمنعك من الفشل بشكل حتمي ولكن هناك مايساعدك كثيراً في تجنبه مستقبلاً وهو الدروس التي بإمكانك تعلمها من التجارب السابقة. نصيحتي لك أن تعيد النظر في مشاريعك وتحاول تحديد موطن الخطأ فيها قد تكون المشكلة من السوق او من الممول او المستثمر ولكن عادةً مايتحمل رائد الاعمال الجزء الجوهري من الخطأ، من المهم جداً أن تكون صادقاً مع نفسك حتى تصل للسبب الرئيسي في الفشل السابق ولابأس أن يساعدك في التقييم أشخاص من فريقك الذي نفذ معك تلك المشاريع. وكخطوات ناجحة لادارة مشروعك المستقبلي أنصحك بتحديد هدفك بشكل واضح ثم احصاء المعرفة والمهارات والادوات والخبرات والمعارف التي تمتلكها عندها ستدرك أن هذه السنوات لم تضع هدراً، ثم ضع خطة واضحة بناء على ماتملكه وماتود الوصول اليه ولاتنسى التقييم المستمر أثناء التنفيذ . تذكر دوماً أن الكثير من رواد الأعمال الناجحين كانت أخطائهم السابقة هي خطوتهم للنجاح وبالتوفيق.
    1 نقطة
  15. أهلًا بك صديقي بالإضافة إلى رد الأخ هشام Firebase: يُعتبر من المنصات الرائعة التي تُقدم خدمات منوعة من أجل تطوير التطبيقات وتُتيح لك المنصة مُزامنة البيانات بشكل تلقائي بين إصدارات الهواتف والويب وذلك عند تطوير التطبيقات من خلالها. ومن أجل تطوير التطبيقات في المصنة، يجب امتلاك حساب في المنصة ويُمكن التسجيل من خلال حساب Gmail الخاص بك. بعد التسجيل في الموقع من اجل استخدامه يجب عمل مشروع جديد على برنامج اندرويد استوديو وربط منصة فايربيس بالمشروع الخاص بك. ومن مميزات منصة Firebase توفر Firebase قاعدة بيانات مجانية. تزامن فوري بين برنامجك وقاعدة البيانات. API يعمل على أنظمة تشغيل ومنصات مختلفة (Android(Java), iOS(C#), Web(Javascript أقل جهد ممكن من المبرمج للحصول على تزامن. توثيق سهل وممتع لـ Firebase API نظام تسجيل دخول بطرق كثيرة (فيسبوك، تويتر، ايميل ورقم سري، الخ) إحصائيات لتفاعل المستخدمين خلال ساعات اليوم.
    1 نقطة
  16. الأمر يتوقف في اختيارك لتخصصك عن رؤيتك الشخصية لمستقبلك المهني، ومؤهلاتك الشخصية، أي أين وكيف ترى نفسك في المستقبل القريب بعد خمس سنوات مثلا. لا تكتفي فقط بالاختيار بُناءً على الدراسة التي تفضلها أو تتفوق فيها وإنما أيضا على سوق العمل وما يحتاجه من تخصصات. استعن بالأساتذة والمعيدين في جامعتك المتخصصين في تدريس هذين الفرعين لتتعرّف بشكل أدق على المواد وفروعها والجانب التطبيقي منها. من الأفضل أن تكوّن رؤية واسعة شاملة لسوق العمل المتوفر في بلدك من خلال جمع المعلومات والاستعانة بدوائر معارفك. بالنسبة لهندسة الشبكات فإما تعمل كمهندس شبكات الذي يقوم بعمله من خلال الزيارات الميدانية ويتعامل مباشرة مع العملاء من خلال شركات متخصصة، فالأفضل في هذه الحالة أن تكون شخصا محبا للحركة ونشيطا، أو كمدير شبكة يعمل في شركة أو مؤسسة ليست بالضرورة متخصصة في مجال تكنولوجيا المعلومات. كثير من الشركات تعتمد على تدعيم قسم ال IT بتوافر كل التخصصات ومن ضمنها الشبكات بينما بعض الشركات الأخرى تفضل الاعتماد على مصادر خارجية في تركيب الشبكات والكاميرات وما إلى ذلك لتتعدد البدائل وللحصول على حلول مبتكرة. بالنسبة لوظائف هندسة البرمجيات فهي تعتمد على تصميم وتطوير أنواع عديدة من البرامج تشمل ألعاب الكمبيوتر، تطبيقات الأعمال، نظم التشغيل، تحليل نظم المعلومات، المسئولية عن موقع الكتروني، إدارة قواعد البيانات وغيرها من الفروع الأخرى المتاحة لطالب هندسة البرمجيات بعد الانتهاء من دراسته عن طريق شركات تطوير البرمجيات أو الشركات متعددة الجنسية أو العمل في الاستشارات المستقلة. ولابد لك ان تتذكّر دائما أنه لا يوجد حدود للعلم ومع كل مستوى جديد يجب أن تتعلم المزيد وتطوّر من نفسك وتحصل على الشهادات، فكلما زادت خبراتك ومعرفتك كلما تقدمت في مستواك الوظيفي.
    1 نقطة
  17. يُتيح أندرويد عدّة طرق للمس الشاشة مثلًا: النقر بالأصبع، نقرتين، النقرة المُطولة... وأثناء برمجة التطبيقات يتمكّن المُبرمج من ربط كل حدث من الأحداث المتعلقة بلمس شاشة الجهاز بمهمة ما برمجيا، كأن تظهر قائمة منسدلة عند إطالة اللمس...وهذا ما يصطلح عليه بـ Gestures. أندرويد يوفر الكلاس GestureDetector المخصصة لاستقبال والتعرّف على نوع الحدث من قبل المُستخدم، وبالتالي ربطه بالمهامات المبرمجة كرد فعل للحدث. لاستعمال تقنية Gestures عليك بالاستعانة بـ كائن GestursDetector عن طريق GesturesDetector.SimpleOnGestureListnes لتفعيل Listner واستعمال العديد من الوظائف المساعدة أثناء ذلك. أحيلك على عدة مراجع، تتضمن شروحات مفصّلة عن الموضوع: Android - Gestures Tutorial Detecting Common Gestures Android SDK: Detecting Gestures
    1 نقطة
  18. نجاح الفيسبوك يرجع بالتأكيد إلى عوامل كثيرة، منها: - الفكرة وقدرتها على التوسّع؛ الفيس بوك قدّم مُنتجًا موجهًا أساسًا إلى شريحة قابلة للتوسّع بشكل كبير. خدمات التدوين (سواء المطوّلة منها مثل بلوغر، ووردبريس، MySpace سابقًا، أو القصيرة منها مثل تويتر) موجّهة إلى فئة مُحددة.. كم من الناس لديه موهبة في صياغة الأفكار وكتابتها بأسلوب جذاب؟ بالتأكيد هذه شريحة ليست بالقليلة لكنها في نهاية المطاف مُحدودة بسقف لا يُمكن تجاوزه.. نعم المدونات (مثل تمبلر) حاولت أن تُوسّع هويتها وأن تُحفّز المشتركين على مشاركة الصور، الاقتباسات، الروابط، مقاطع الفيديو.. إلى جانب النصوص، لكن ذلك أتى في مرحلة متأخرة، بعد أن أكلت شبكات مثل الفيسبوك السوق بالكامل. فيسبوك استطاع توسيع نفسه باستمرار، منذ خروجه عن هويته الأولى الموجهة لطلاب الجامعات، وإلى اليوم، ينجح الفيسبوك بإعادة تشكيل وتوسيع خدماته حسب توجهات السوق واحتياجاته. ولذا يعمل الفيسبوك على إضافة خدمات مثل الفيديو، المقالات الفورية، الصور، الملاحظات، المناسبات، وأي شيء يرغب به المستخدمون.. - الإعجاب، بمشاركتك ضمن الفيسبوك أنت تحصل على جائزة مُباشرة وفورية "حصد الإعجابات"، هناك الكثير من الدراسات النفسية والاجتماعية التي تتحدّث عن أثر هذا الزر الصغير في تشجيع الآخرين على المشاركة لنيل الإعجاب، وانعكاس ذلك على المزاج الشخصي.. مجددا بعض الخدمات حاولت تقديم أفكار مشابهة لكن ذلك كان تقليدا لنجاح الفيسبوك - تقديم الفكرة في منتج تقني سهل الاستخدام، فعّال، لا تنسَ عدد مرات توقف خدمة مثل تويتر، أو صعوبة إدارة مدونة مثل ووردبريس.. فيسبوك تجاوز ذلك، واجهة بسيطة، ومنتج ناجح من الناحية الفنية والتقنية
    1 نقطة
×
×
  • أضف...