البحث في الموقع
المحتوى عن 'mail'.
-
يضيف الإصدار 5.3 من Laravel نظاما للإشعارات Notifications يمكن من خلاله إخطار المستخدم بحدوث شيء ما. تُستخدَم الإشعارات، التي تكون عادة على هيئة بلاغات قصيرة، لإعلام مستخدم التطبيق بوقوع أمر ما؛ على سبيل المثال “صدور فاتورة”، “تسجيل مستخدم”، “إعادة تعيين كلمة السّر” أو “نشر درس”؛ حسب طبيعة التطبيق الذي تعمل عليه. يتيح نظام الإشعارات في Laravel 5.3 وسائط عدّة (تُسمّى قنوات Channels) لتوصيل الإشعار: البريد الإلكتروني، الرسائل النصية القصيرة SMS (بالاعتماد على خدمة Nexmo) وخدمة Slack. يمكن أيضا تخزين الإشعارات في قاعدة البيانات من أجل عرضها في واجهة الوِب. سنرى في هذا الدرس كيفية عمل الإشعارات، بأخذ مثال لإشعار يُرسَل إلى بريد المستخدم عند إضافة منشور جديد. تهيئة المشروع نبدأ أولا بتهيئة المشروع الذي سنعمل عليه. أنشئ مشروع Laravel 5.3 جديدا، إن لم يكن لديك واحد جاهز واضبط إعدادات قاعدة البيانات. نستخدم نفس الإعدادات المذكورة في فقرة تهيئة بيئة التطوير من درس أساسيات التخبئة في Laravel؛ مع التعديل عليها قليلا. سنضيف صنفا لبذر المستخدمين: php artisan make:seeder UsersTableSeeder ونعدّل صنف البذر على النحو التالي لإضافة مستخدمَيْن إلى قاعدة البيانات: public function run() { $user1 = [ 'name' => 'Med Ahmed Eyil', 'email' => 'medeyil@laravel.com', 'password' => Hash::make('1234'), ]; $user2 = [ 'name' => 'Fatima Benziane', 'email' => 'fbenziane@laravel.com', 'password' => Hash::make('4567'), ]; User::create($user1); User::create($user2); } ثم ننفّذ البذر: php artisan db:seed يصبح لدينا الآن نموذجان، واحد للمستخدمين وآخر للمنشورات. ننتقل إلى ملف المسارات routes/web.php ونضيف المسار التالي: Route::get('/notify/{user_id}/{post_id}', 'PostsController@notify'); يعني هذا أنه عند زيارة الرابط notify/user_id/post_id/ (حيث user_id وpost_id معرّفا المستخدم والمنشور على التوالي) سيطلُب Laravel تنفيذ الدالة notify في المتحكم PostsController. نعدّل المتحكّم PostsController لإضافة هذه الدالة: public function notify($user_id,$post_id) { $user = User::find($user_id); $post = Post::find($post_id); // todo } سنعود لاحقا لإكمال الدالة notify التي تكتفي لحد الساعة بالعثور على المستخدم والمنشور الممررَيْن إليها في المعطيات. الإشعارات هدفنا هو التالي: يطلُب المتصفح الرابط notify/1/2/ (مثلا) فيُرسَل إشعار عبر البريد إلى المستخدم ذي المعرف 1 يخبره أن المنشور ذا المعرف 2 قد أُضيف إلى الموقع. سنحتاج لبلوغ هذا الهدف لإشعار “إضافة منشور”. ننفذ الأمر التالي لإنشاء هذا الإشعار: php artisan make:notification NewPost ستلاحظ بعد تنفيذ الأمر أعلاه ظهور مجلد جديد باسم Notifications (إن لم يكن موجودا سلفا) متفرع عن المجلد app وبداخله صنف باسم NewPost.php (نزعنا التعليقات للاختصار): <?php namespace App\Notifications; use Illuminate\Bus\Queueable; use Illuminate\Notifications\Notification; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Notifications\Messages\MailMessage; class NewPost extends Notification { use Queueable; public function __construct() { } public function via($notifiable) { return ['mail']; } public function toMail($notifiable) { return (new MailMessage) ->line('The introduction to the notification.') ->action('Notification Action', 'https://laravel.com') ->line('Thank you for using our application!'); } public function toArray($notifiable) { return [ ]; } } يمدّد الصنف NewPost الصنفَ Notification الذي يحوي التعليمات الضرورية للتعامل مع الإشعارات. تظهر الدالة المشيّدة Constructor وثلاث دوال أخرى: via: تعرّف القنوات التي نريد إرسال الإشعارات عبرها. توجد قناة البريد mail مبدئيا. تمكن إضافة قناة أخرى من تلك المتوفرة. يستخدم Laravel جميع القنوات المذكورة في المصفوفة المرجَعة، بمعنى؛ إن حددت مثلا القناتين mail وdatabase في المصفوفة فإن الإشعار سيُرسَل عبر البريد ويُخزَّن أيضا في قاعدة البيانات. toMail: هذه الدالة خاصّة بالتعامل مع قناة البريد الإلكتروني. تنشئ الدالة toMail كائنا من صنف MailMessage لتخصيص بريد إلكتروني. سنعود لهذا الصنف بعد قليل. toArray: إن حدّدت قناة للإشعارات في الدالة via دون أن تنشئ دالة خاصّة للتعامل معها فسيستدعي Laravel الدالة toArray. تجدر الإشارة إلى أن الدوال المخصّصة للتعامل مع قنوات الإشعارات تبدأ بـto متبوعة باسم القناة. مثلا toMail للبريد الإلكتروني (تأتي مبدئيا) وtoDatabase لتخصيص الإشعار عبر قناة قاعدة البيانات. نعدّل الصنف NewPost قليلا بحيث نمرّر للمشيّد معطى من نوع Post (نزعنا أجزاء الصنف التي لم يطرأ عليها تعديل): <?php // استدعاء الأصناف، أضفنا إليه الصنف Post use App\Post; class NewPost extends Notification { // أضفنا خاصيّة post إلى الصنف protected $post; public function __construct(Post $post) { $this->post = $post; } // بقية شفرة الصّنف } نعود إلى الدالة notify في المتحكم ونعدّلها لتصبح على النحو التالي: public function notify($user_id,$post_id) { $user = User::find($user_id); $post = Post::find($post_id); $user->notify(new NewPost($post)); } لا تنس استدعاء الصنف NewPost في المتحكم: use App\Notifications\NewPost; استدعينا الدالة notify من الكائن user$ ومررنا إليها صنفا جديدا من الإشعار NewPost. سنحتاج قبل تجربة إرسال الإشعار إلى ضبط البريد الإلكتروني في ملف النظام env.. ستجد في الملف عند فتحه الإعدادات التالية: MAIL_DRIVER=smtp MAIL_HOST=mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null يقترح Laravel مبدئيا موقع https://mailtrap.io الذي يوفر خدمة لمحاكاة إرسال بريد إلكتروني وعرضه. نحصُل بالتسجيل في الموقع على صندوق بريد للاختبار. ندخل إلى صندوق البريد (Demo inbox). ننسخ قيم Username وPassword ونضيفها إلى الإعدادات في ملف env. على النحو التالي: MAIL_DRIVER=smtp MAIL_HOST=mailtrap.io MAIL_PORT=2525 MAIL_USERNAME="be7c7d3972da27" MAIL_PASSWORD="5f445b7bdca027" MAIL_ENCRYPTION=null يمكننا الآن اختبار الإشعار بتشغيل خادوم التطبيق والذهاب إلى المسار http://localhost:8000/notify/1/2. إن نظرت في صندوق البريد على موقع mailtrap فستجد رسالة جديدة: لاحظ العنوان البريدي الذي يُوجّه إليه الإشعار medeyil@laravel.com. إن عدلت المسار الذي تطلُبه إلى التالي http://localhost:8000/notify/2/2 ونظرت في الإشعار الذي يصل إلى البريد فستجد أن المرسَل إليه To تبدّل إلى fbenziane@laravel.com الذي هو بريد المستخدم ذي المعرف 2. هل تساءلت كيف يعرف نظام الإشعارات البريد الإلكتروني الذي يجب إرسال الإشعار إليه، أي البريد الإلكتروني الخاصّ بالمستخدِم؟ تخصيص الإشعار عبر البريد الإلكتروني يمكن تطبيق الإشعارات على أي نموذج Eloquent في النظام، بشرط أن يستخدم النموذجُ السّمةَ Trait المسمّاة Notifiable. إن نظرنا إلى النموذج User الذي يأتي مبدئيا مع المشروع فسنلاحظ التالي: use Illuminate\Notifications\Notifiable; و use Notifiable; يتيح استخدام هذه السمة في النموذج إمكانية استدعاء الدالة notify: $user->notify(new NewPost($post)); التي تأخذ معطى عبارة عن كائن من صنف Notification. بالنسبة لكيفية معرفة نظام الإشعارات ببريد المستخدم فالإجابة هي أن كل قناة إشعار تتطلّب وجود خاصيّات Properties معيّنة في النموذج الذي يستدعي الدالة notify. في حالة قناة البريد الإلكتروني فإن الخاصيّة المنتظرة هي - منطقيا - عنوان البريد email. بالعودة إلى الصنف NewPost لاحظ دالة التعامل مع البريد الإلكتروني: public function toMail($notifiable) { return (new MailMessage) ->line('The introduction to the notification.') ->action('Notification Action', 'https://laravel.com') ->line('Thank you for using our application!'); } ترجع هذه الدالة كائنا من صنف MailMessage. إن تنبهت جيدا فستدرك أن العبارات الواردة في الشفرة أعلاه هي نفسها الموجودة في البريد المرسَل إلى المستخدم: الدالة line تدرج فقرة في بريد الإشعار. الدالة action تدرج زرًّا وتحدّد النص الذي يظهر على الزرّ ورابط الصفحة التي تزورها عند النقر على هذا الزرّ. توجد دوال أخرى لتخصيص الإشعار أكثر: subject لتخصيص موضوع البريد الإلكتروني. from لتحديد بريد المرسِل. attach لإضافة ملف مرفَق. priority لتحديد الأولوية (1 تعني أولوية قصوى). نخصّص في ما يلي البريد السّابق: public function toMail($notifiable) { return (new MailMessage) ->subject('New post: '. $this->post->title) ->line('Don\'t miss our new post ' .$this->post->title) ->action('View the post', 'https://laravel.com') ->line('Thank you for your visit!') ->from('hsoub@academy.com'); } نحصل بزيارة الرابط http://localhost:8000/notify/1/2 على النتيجة أدناه. بالنسبة لاسم التطبيق الذي يظهر في الإشعار فيمكن تعديله عن طريق التعليمة name في ملف الإعداد config/app.php. تأخذ التعليمة مبدئيا القيمة Laravel. إن أردت تخصيصا أكبر للبريد ومظهره فيمكنك ذلك بنشر قالب Blade الخاص بالبريد الإلكتروني للإشعار ومن ثم تخصيصه. نفذ الأمر التالي لنشر القالب: php artisan vendor:publish --tag=laravel-notifications ستجد القالب على المسار resources/views/vendor/notifications/email.blade.php؛ حيث يمكنك التعديل عليه بما تراه مناسبا.
-
في هذا الدرس ستحتاج بعض الأمثلة للتعديل بما يتوافق مع حالتك لتعمل بشكل صحيح (مثل كلمات السّر)، أمّا الباقي فمعظمه سيكون قابلاً للنسخ واللصق. حول دالّة mail() في لغة PHP تَستخدِم دالّة mail() البرنامج الموجود في مسار sendmail_path لإرسال رسائل البريد الإلكتروني. وهذا معدٌّ كـَsendmail بشكلٍ افتراضي. ومع أن معظم تنصيبات نظام Linux تملك sendmail مثبتة بشكل مسبق، فإنّك ستواجه بعض الصعوبات في إعداد تسجيلات SPF/PTR وتوليد مفاتيح DKIM وبعض الأمور الأخرى حتى تتأكد بأن رسالة البريد المرسلة بواسطة سكربت الـPHP لن يتم تعليمه كرسالة بريدٍ ضارة (spam). يمكن استخدام بروتوكول MSMTP - وهو أحد عملاء SMTP - لإرسال رسائل البريد باستخدام خوادم SMTP من طرف ثالث، ويمكن استخدام ذلك في دالّة mail() عوضاً عن sendmail. التثبيت لتثبيت برتوكول MSMTP على نظام Fedora Linux استخدم yum كالاتي: yum install msmtp وبما أن مستودع CentOs لا يحتوي على حزمة RPM لـMSMTP ، فإننا سنحتاج الى تنصيبها من المصدر: yum install make gcc pkgconfig wget http://sourceforge.net/projects/msmtp/files/msmtp/1.4.31/msmtp-1.4.31.tar.bz2/download tar -xvf msmtp-1.4.31.tar.bz2 cd msmtp-1.4.31 ./configure make make install في وقت كتابة هذا المقال فإن آخر إصدار متوفر هو 1.4.31، ولكن قد تتوفر إصدارات أخرى في المستقبل، وللحصول عليها قم بزيارة هذه الصفحة. على توزيعة Ubuntu/Debian استخدم apt-get : apt-get install msmtp ولمستخدمي Arch Linux : sudo pacman -S msmtp إعداد بروتوكول MSMTP إن ملف الإعدادات الخاص ببروتوكول MSMTP محفوظ في ~/.msmtprc لكل مستخدم، وملف الإعدادات الشامل للنظام هو /etc/msmtprc. قم الآن بفتح ملف الإعدادات في دليلك (directory): vi ~/.msmtprc قم بإضافة هذه الأسطر إلى حساب Yahoo: account yahoo tls on tls_starttls off tls_certcheck off auth on host smtp.mail.yahoo.com user user1 from user1@yahoo.com password yourYahooPa5sw0rd وبالنسبة للـGmail استخدم الإعدادات التالية: account gmail tls on tls_certcheck off auth on host smtp.gmail.com port 587 user user1@gmail.com from user1@gmail.com password yourgmailPassw0rd يمكن أن يحتوي هذا الملف على أكثر من حساب، فقط تأكد بأن تكون قيمة account لكل قسم مختلفة عن الأخرى. قم بحفظ الملف واستعمل chmod لجعل هذا الملف قابلاً للقراءة فقط من قبل المالك لأنه يحتوي على كلمات مرور. الخطوة التالية تعد إجبارية لأن بروتوكول msmtp لن يعمل إذا كانت الصلاحيات أكثر من 600. chmod 600 ~/.msmtprc قبل تنفيذ ذلك في PHP، تحقق باستخدام سطر الأوامر لتتأكد أن كل شيء يعمل بشكل سليم. للقيام بذلك، قم بإنشاء ملفٍ نصيٍّ عادي وضع فيه النص الآتي (النص عبارة عن رسالة بريد قصيرة): echo -e "From: Alice <alice@example.com> \n\ To: Bob <bob@domain.com> \n\ Subject: Hello World \n\ \n\ This email was sent using MSMTP via Gmail/Yahoo." >> sample_email.txt قم الآن بإرسال البريد: cat sample_email.txt | msmtp --debug -a gmail bob@domain.com استبدل كلمة gmail بكلمة yahoo أو ما قمت بإدخاله مسبقاً في خيار account. سوف ترى العديد من الرسائل بسبب المعطى --debug. يُستخدَم هذا لجعل اكتشاف وتصحيح الأخطاء أمراً سهلاً إذا لم تعمل الأمور كما يجب. إذا تلقّى bob@domain.com هذا البريد فإن كل شيء قد تم تنصيبه بشكل صحيح. لذلك قم بنسخ هذا الملف إلى مُجلّد /etc باستخدام السطر التالي: cp -p ~/.msmtprc /etc/.msmtp_php قم بتغيير الملكية إلى اسم المستخدم الذي يعمل الخادوم تحته. قد يكون ذلك apache، www-data أو nobody اعتماداً على توزيعة الـLinux الموجودة في الخادوم الإفتراضي الخاص بك (VPS) وعلى خادوم الويب المثبت: chown www-data:www-data /etc/.msmtp_php إعداد وتهيئة PHP افتح ملف php.ini والذي قد يختلف مكان وجوده باختلاف نظام التشغيل (OS) ونوع PHP المثبت (مثل PHP CGI، mod_php، PHP-FPM …الخ): vi /etc/php5/php.ini ابحث عن السطر الاتي: sendmail_path = وعندما تجده قم بتعديله عن طريق إضافة المسار الخاص بأمر msmtp ليصبح كما يلي: sendmail_path = "/usr/bin/msmtp -C /etc/.msmtp_php --logfile /var/log/msmtp.log -a gmail -t" يدوياً، أنشىء ملف سجل (log file) وقم بتغيير ملكيته (ownership) الى اسم المستخدم الذي يعمل به خادوم الويب: touch /var/log/msmtp.log chown www-data:www-data /var/log/msmtp.log أعد تشغيل خادوم الويب لتطبيق التغييرات: service httpd restart في نظام Arch Linux يتم ذلك باستخدام الأمر systemctl: systemctl restart httpd اعتماداً على نظام التشغيل وخادوم الويب قم باستبدال httpd بالاسم المناسب. إذا كانت PHP تعمل كعملية منفصلة (مثل PHP-FPM) قم بإعادة تشغيله عوضاً عن ذلك: service php5-fpm restart ولإختبار هذه التنصيبة، قم بإنشاء سكربت PHP مع دالّة mail() بسيطة: <?php if(mail("receipient@domain.com","A Subject Here","Hi there,\nThis email was sent using PHP's mail function.")) print "Email successfully sent"; else print "An error occured"; ?> قم بالدخول إلى هذا الملف باستخدام إحدى المتصفحات: http://www.example.com/file.php اذا لم يتم إرسال البريد فيمكنك التحقق من وجود أي أخطاء عبر سجل msmtp: tail /var/log/msmtp.log أخطاء شائعة اذا لم يتم إرسال البريد عند استخدام سكربت PHP، فعليك التحقق مما يلي: تحقق من أنك قد قمت بالتعديل على ملف php.ini الصحيح. يمكن التأكد والتحقق من ذلك عن طريق إنشاء ملف phpinfo(); والتأكد من قسم Loaded Configuration File. قد يكون المسار الى ملف إعدادات msmtp خاطئًا أو أن الخادوم لا يملك الصلاحية لقراءة هذا الملف. تحقق اذا ما تم إرسال أي بريد وذلك عن طريق تشغيل السكربت باستخدام سطر أوامر PHP: php /var/www/html/file.php ترجمة -وبتصرّف- للمقال How To Use Gmail or Yahoo with PHP mail() Function لصاحبه Jesin A
-
يُسهل وورد إنشاء أنواع عديدة من الملصقات وطباعتها بشكل مفرد أو مجاميع. يمكنك مثلا إنشاء ملصقات التسعير، الملصقات البريدية، ملصقات أقراص CD/DVD أو غيرها. وباستخدام القوالب الجاهزة template ستصبح هذه العملية أسهل بكثير وتختصر الكثير من الوقت. في هذا الدرس سنقوم بإنشاء ملصقات بريدية كمثال، تنسيقها، وطباعتها. كما سنتعرف على كيفية إنشاء قوالب ملصقات بإبعاد مخصصة. لإنشاء ملصق اذهب إلى تبويب مراسلات Mailings، ومن خانة إنشاء Create اختر تسميات (ملصقات) Labels: في مربع الحوار Envelopes and Labels انقر خيارات Options: من مربع خيارات التسمية يمكنك التحكم بالعديد من الخيارات كنوع الطابعة، ومعلومات الملصق: من معلومات الطابعة Printer information اختر نوع الطابعة التي ستستخدمها لطباعة الملصقات.من معلومات التسمية Label information ومن مربع مورد التسميات Label vendor اختر اسم الشركة المصنعة للملصقات التي تستخدمها. توجد العديد من الشركات في القائمة، وسنقوم باختيار Microsoft كمثال.بعد اختيار اسم الشركة اختر رقم المنتج Product number المدرج على حافظة أوراق الملصقات التي تستخدمها. إن رقم المنتج هو عبارة عن قالب جاهز يمكنك استخدامه دون الحاجة إلى إدخال قياسات محددة. وإن لم تجد القالب الذي يتطابق مع قياسات الملصقات التي تستخدمها يمكنك إنشاء قالب مخصص كما سنوضح لاحقا في هذا المقال. سنقوم باختيار 30 per page.بعد تحديد الخيارات والقالب المناسب لأوراق الملصقات التي تستخدمها انقر موافق OK. الخطوة التالية هي كتابة العنوان أو أي محتوى آخر في مربع Address: عند الانتهاء من كتابة العنوان (أو أي محتوى آخر) يمكنك طباعة ورقة كاملة من نفس الملصق من خيار Full page of the same label، أو طباعة ملصق واحد Single label. كما يمكنك طباعة الملصقات مباشرة من أمر Print أو تصديرها إلى مستند من أمر New Document. والخيار الأخير يستخدم في حالة تنسيق الملصقات قبل الطباعة. سنقوم بطباعة ورقة كاملة من نفس الملصق وتصديرها إلى مستند جديد أولا: بعد فتح المستند الجديد الذي يحتوي على جدول الملصقات اذهب إلى: ملف File > طباعة Print إذا لم تكن ترغب في إجراء تنسيقات معينة. من نافذة الطباعة اختر نوع الطابعة، وشاهد المعاينة لمعرفة كيف ستبدو الملصقات عند طباعتها، ثم انقر Print. إما إذا لم تكن لديك ورقة كاملة من الملصقات، وتبقى لديك ملصق واحد فيها، حدّد الخيار Single label، ثم أدخل رقم الصف ورقم العمود الذي يوجد في الملصق على الورقة وانقر طباعة Print: استخدام دمج المراسلات لإنشاء ملصقات متعددةفي المثال السابق قمنا بإنشاء ملصقات بريدية لنفس المستلم، أي قائمة من الملصقات المتشابهة. أما إذا أردت إنشاء قائمة من الملصقات لعدة مستلمين يمكنك إدخال أسماء المستلمين وعناوينهم يدويا، أو استخدام دمج المراسلات Mail Merge. لإنشاء ملصقات مختلفة اتبع الخطوات التالية: من تبويب مراسلات Mailing انقر بدء دمج المراسلات Start mail Merge ثم اختر تسميات Labels: في مربع خيارات التسميات قم بتحديد خيارات الطابعة ونوع القالب كما فعلنا في المثال السابق، ثم انقر موافق: سيقوم وورد بإدراج جدول ملصقات فارغ. لعرض الجدول اذهب إلى التبويب السياقي تخطيط Layout وانقر عرض خطوط الشبكة View Gridlines: الخطوة التالية ستكون إدخال أسماء المستلمين وعناوينهم. من تبويب مراسلات Mailings انقر تحديد المستلمين Select Recipients واختر كتابة قائمة جديدة Type a New List: في مربع قائمة عناوين جديدة ابدأ بإضافة تفاصيل العناوين. يمكنك إدخال العدد الذي تريده من المستلمين. وللاختصار استخدم المفتاح Tab للانتقال إلى اليمين، أو المفتاحين Tab+Shift للرجوع إلى اليسار. بعد أن تنتهي من إدخال تفاصيل عنوان المستلم الأول انقر إدخال جديد New Entry للانتقال إلى المستلم التالي: عندما تنتهي من إضافة المستلمين انقر موافق OK، اكتب اسم القائمة واحفظها. ملاحظة: الأسماء والعناوين في هذه القائمة وهمية استخدمت للتوضيح فقط. بعد إنشاء جدول الملصقات الفارغ وقائمة المستلمين، استخدم كتلة العنوان لتنسيق طريقة عرض العنوان. من تبويب مراسلات انقر كتلة العنوان Address Block: من مربع إدراج كتلة العنوان يمكنك تغيير تنسيق عرض الأسماء، إدراج اسم الشركة أو عدم إدراجه Insert Company Name، إدراج اسم البلد حسب شرط معين أو عدم إدراجه Insert postal address، أو تنسيق العنوان حسب البلد. يمكنك مشاهدة معاينة للتنسيق من خانة المعاينة واستخدام الأسهم للتنقل بين العناوين المختلفة: بعد الانتهاء من تنسيق طريقة عرض العناوين تأكد من العودة إلى أول عنوان (أي إلى الرقم 1في خانة المعاينة كما موضح في الصورة أدناه) بعدها انقر موافق OK. ستتم إضافة كتلة العنوان الأولى في الحقل الأول. لإضافة باقي عناوين القائمة انقر تحديث الملصقات Update Labels، ثم معاينة النتائج Preview Results لمشاهدة العناوين في الحقول: إذا كانت العناوين جاهزة ولا تحتاج إلى تنسيق قم بطباعتها من: ملف File > طباعة Print قد تتساءل لماذا قمنا بإضافة قائمة بالرغم من أنّ كتابتها يدويا في الحقول تستغرق نفس الوقت؟ والسبب هو أنّك عندما تقوم بإنشاء قائمة عناوين المستلمين بهذه الطريقة ستتمكن من الرجوع إليها كلما احتجتها. كل ما عليك فعله هو اختيار Use an Existing List من أمر تحديد المستلمين Select Recipients واستخدامها مجددا دون أن تضطر لإعادة الكتابة. تنسيق الملصقات وإضافة صورةهناك العديد من الخيارات لتنسيق الملصقات قبل طباعتها، كتعديل قائمة المستلمين، تنسيق النصوص، أو إضافة صورة. إذا كان العنوان لا يظهر كاملا كما في المثال أدناه: قم بتحديد محتويات الحقل الأول بالكامل، اذهب إلى تبويب الصفحة الرئيسية Home واختر Line Spacing Option من أمر تباعد الأسطر: في خانة التباعد قم بتغيير قيمة At إلى 0.5، ثم انقر موافق: سيتم تقليل التباعد بين الأسطر، وبذلك سيظهر العنوان كاملا. انقر تحديث التسميات Update Labels لتطبيق هذا التغيير على كافة الحقول: من نفس التبويب يمكنك استخدام تنسيقات النصوص الأخرى كاللون، الحجم، والسُمك. قد ترغب في إزالة بعض المستلمين من قائمة الملصقات (دون حذفها من القائمة الأصلية)، بإمكانك فعل ذلك عن طريق أمر تحرير قائمة المستلمين Edit Recipients List. قم بإلغاء تحديد المستلمين الذين لا ترغب في طباعة عناوينهم. كما يمكنك استخدام أوامر الفرز والتصفية: أما إذا رغبت في التعديل على القائمة الأصلية بتغيير عناوين المستلمين، حذف عناوين محددة، أو إضافة مستلمين آخرين، حدد اسم القائمة في خانة مصدر البيانات Data Source وانقر تحرير Edit: يمكنك أيضا تعديل كتلة العناوين إذا رغبت في تغيير طريقة عرض العناوين. انقر على كتلة العنوان Address Block واجر التعديلات المرغوبة. تأكد فقط العودة إلى أول عنوان في خانة المعاينة قبل أن تنقر موافق. وبما أن البرنامج يقوم بترتيب الملصقات بصيغة جدول، يمكنك استخدام خيارات الجدول من التبويبين السياقيين تخطيط Layout، وتصميم Design. يمكنك مثلا توسيط النصوص داخل الحقول من تبويب تخطيط: بعد إجراء تعديل على أحد الحقول، انقر تحديث التسميات Update Labels لتطبيقها على الحقول الأخرى. لكن تجنب أن تغير أبعاد هوامش الحقول أو الخيارات المحاذاة، لأن ذلك سيؤثر على محاذاة النصوص مع الملصقات عند طباعتها. لإدراج صورة أو شعار مع العناوين، ضع المؤشر في بداية النص في الحقل الأول، ومن تبويب إدراج Insert انقر صورة Picture. اختر الصورة من جهازك، وانقر إدراج: بعد إدراج الصورة انقر على أيقونة التخطيط التي تظهر بجانبها، واختر مربع Square لتتمكن من تحجيم الصورة وتغيير موضعها: قم بتغيير حجم الصورة إلى حجم مناسب، وغير موضعها بتحريكها بجانب النص. بعد الانتهاء من إدراج الصورة في الحقل الأول، انقر تحديث المسميات Update Labels لإضافتها إلى جميع الحقول الأخرى: بعد إجراء جميع التنسيقات المرغوبة قم بطباعة الملصقات من: ملف File > طباعة Print خيارات الملصقات الأخرىليست الملصقات البريدية هي الوحيدة التي يمكنك إنشاءها في وورد. يمكنك إنشاء مختلف الملصقات كملصقات الشحن، ملصقات التسعير، البطاقات التعريفية اللاصقة وغيرها. سنقوم مثلا بإنشاء بطاقات تعريفية لاصقة من أحد القوالب الموجودة في خيارات التسميات. من تبويب مراسلات Mailings ننقر بدء دمج المراسلات Start Mail Merge ونختار تسميات Labels. من خيارات التسمية نحدد الخيارات المرغوبة ونختار القالب من خانة رقم المنتج Product Number: الخطوة التالية بعد إدراج الحقول هي إضافة المعلومات على البطاقات. سنستخدم قائمة المستلمين التي قمنا بإنشائها سابقا لاستيراد الأسماء منها، إذ أنها عبارة عن قاعدة بيانات يمكن استخدمها لأكثر من غرض وليس إنشاء ملصقات بريدية فقط. من أمر تحديد المستلمين سنختار Use Existing List: سنحدد القائمة وننقر فتح Open: الخطوة التالية هي إضافة معلومات البطاقة. لن نقوم بعمل كتلة عناوين، فهي تستخدم للملصقات البريدية والظروف. سنقوم بإدراج حقول يدويا لتحديد المعلومات التي نرغب في إضافتها إلى البطاقة. سنقوم أولا بإظهار علامة الفقرات من تبويب الصفحة الرئيسية Home لكي يكون تحديد النصوص سهلا: في الحقل الأول سننزل بضع سطور لإضافة الاسم في الوسط. ومن أمر إدراج حقل دمج Insert Merge Field سنقوم بإدراج الاسم الأول First_Name، ثم مسافة ثم الاسم الأخير Last_Name: وسننزل سطر آخر لإدراج اسم المدينة مثلا: سننقر تحديث التسميات Update Labels ثم معاينة النتائج Preview Results: وأخيرا سنقوم بعمل تنسيقات على البطاقة كتكبير حجم النص وتوسيطه، وإضافة خلفية للبطاقة. لإضافة الخلفية سنضع المؤشر قبل السطر الأول في الحقل الأول، ومن تبويب إدراج Insert سنحدد صورة Picture: من خيارات تخطيط الصورة سنقوم باختيار خلف النص Behind Text: ومن خيارات تصحيحات الصورة Corrections، اللون Color، والتأثيرات الفنية Artistic Effects سنحدد خيارات تجعل لون الصورة باهتا لكيلا تؤثر على تباين النصوص: بعد الانتهاء من جميع التنسيقات سننقر تحديث التسميات Update Labels لتطبيق التغييرات على جميع الحقول: بعد الانتهاء من إنشاء الملصقات قم بطباعتها من: ملف File > طباعة Print (أو استخدم الاختصار Ctrl+P). القوالب المخصصةفي بعض الأحيان لا تعثر على القالب المناسب لنوع الملصقات التي تستخدمها ضمن قائمة خيارات التسميات. ولحل هذه المشكلة ابحث في خانة رقم المنتج Product Number عن قالب بأبعاد مقاربة لأبعاد الملصقات التي تستخدمها. استفد من خانة معلومات التسمية لمعرفة أبعاد القالب: بعد العثور على قالب بأبعاد مقاربة انقر تسمية جديدة New Label: يحتوي مربع الحوار تفاصيل التسمية Label details على جميع أبعاد الملصق، ويوضح من خلال المخطط في خانة معاينة Preview ما يعنيه كل قياس. يمكنك تغيير القيم لمعرفة ما تعنيه القياسات من خلال المعاينة. قم بقياس أبعاد منتج الملصقات الذي تستخدمه بدقة، وقم بإدخال هذه الأبعاد في حقولها المخصصة. بعدها قم بتسمية القالب الجديد وانقر موافق OK. ستتم إضافة القالب إلى قائمة مخصصة other/custom في خيار مورد التسمية Label vendor وهو جاهز للتعديل والطباعة: