অনেক দিন ধরেই এইচটিএমএল৫ নিয়ে লেখার ইচ্ছে ছিল। অবশেষে সেটি সম্পন্ন করেছি গত মাসে। বইটি যথারীতি ছাপা হয়েছে জ্ঞানকোষ প্রকাশনী থেকে। আজ বইটি হাতে পেলাম। প্রতিটি নূতন বই দেখার পরই এক ধরনের ভিন্ন অনুভূতি হয়, এবারও তাই হলো।

বইটি এখন ঢাকা ও ঢাকার বাইরে বিভিন্ন বইয়ের দোকানে পাওয়া যাবে। আর অনলাইনে http://rokomari.com/book/46996 থেকেও এটি অর্ডার করতে পারেন, তাহলে বই চলে যাবে আপনার ঠিকানায়।

বইটিতে নিচের বিষয়গুলি শিখবেন:

  • এইচটিএমএল কী ও কেন?
  • এইচটিএমএল৫ এর নূতন বৈশিষ্ট‍্যসমূহ কী?
  • ডকুমেন্ট গঠন করবেন কীভাবে?
  • কীভাবে কনটেন্ট গ্রুপিং উপাদানসমূহ ব‍্যবহার করবেন?
  • কীভাবে টেক্সট মার্কআপ উপাদানসমূহ ব‍্যবহার করবেন?
  • কীভাবে সেকশন উপাদানসমূহ ব‍্যবহার করবেন?
  • ওয়েবপেজে সারণি ব‍্যবহার করবেন কীভাবে?
  • ওয়েবপেজে ফরম ব‍্যবহার করবেন কীভাবে?
  • ফরমে বিভিন্ন ধরনের ইনপুট উপাদান ব‍্যবহার করবেন কীভাবে?
  • ফরমের মাধ‍্যমে দাখিলকৃত তথ‍্য যাচাই করবেন কীভাবে?
  • বিভিন্ন ধরনের কনটেন্ট যোগ করবেন কীভাবে?
  • কীভাবে ওয়েবপেজে ইমেজ, ভিডিও ও অডিও দেখাবেন?
  • বিভিন্ন মাল্টিমিডিয়া উপাদান ব‍্যবহার করবেন কীভাবে?
  • ক‍্যানভাস উপাদানের মাধ‍্যমে কীভাবে ড্রয়িং সারবেন?
  • কীভাবে ড্রপ ও ড্র‍্যাগের ব‍্যবহার করবেন?
  • কীভাবে ব‍্যবহারকারীর ভৌগলিক অবস্থান জানবেন?
  • ওয়েবস্টোরেজ ও লোকাল স্টোরেজ কীভাবে ব‍্যবহার করবেন?
  • কীভাবে অফলাইন ওয়েব এপ্লিকেশন তৈরি করবেন?

বইয়ের সাথের সিডিতে পাবেন বইয়ে ব‍্যবহৃত কোড ও বিভিন্ন টুলস।

কোনো নোডের মধ‍্যকার কনটেন্ট বদলাতে চাইলে জেকোয়েরিতে আপনি দুটি মেথড ব‍্যবহার করতে পারেন: text()html()text() মেথডের মাধ‍্যমে কেবল টেক্সট যোগ করতে পারবেন কোনো মার্কআপ ছাড়া, আর html() এর মাধ‍্যমে তাতে মার্কআপ যোগ করতে পারবেন। নিচের উদাহরণটি লক্ষ‍্য করুন:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>jQuery Shohojpath</title>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
    <script>
        $(document).ready(function(){
            $("#cont1").text("This is some text inserted by <code>text()</code> method.");
            $("#cont2").html("This text is inserted by <strong>jQuery</strong> using <code>html()</code> method.");
        });
    </script>

</head>

<body>
    <h1>Inserting text in nodes</h1>
    <p id="cont1"></p>
    <p id="cont2"></p>

</body>
</html>

এখানে প্রথমে text() মেথড ব‍্যবহার করে কিছু টেক্সট যোগ করতে বলা হয়েছে যার মধ‍্যে একটি মার্কআপ <code>text()</code> রয়েছে। এরপর html() মেথড ব‍্যবহার করে সেখানেও কিছু HTML যোগ করতে বলা হয়েছে। তার মধ‍্যে strong ও code উপাদান ব‍্যবহার করা হয়েছে। এখন এই ডকুমেন্টটি যদি ওয়েব ব্রাউজারে দেখেন তাহলে নিচের চিত্রের মতো দেখতে পাবেন।

Slecting Contents of a DOM node

লক্ষ‍্য করুন, text() মেথডের মাধ‍্যমে আমরা যে টেক্সট যোগ করেছি তাতে HTML মার্কআপ থাকলেও তা মার্কআপ হিসেবে দেখাচ্ছে না, দেখাচ্ছে টেক্সট হিসেবে। এর পরেই html() মেথড ব‍্যবহার করে মার্কআপসহ যে টেক্সট যোগ করা হচ্ছে তাতে মার্কআপ ঠিকমতোই দেখাচ্ছে। তাই কোনো টেক্সটের মধ‍্যে মার্কআপ থাকলে এবং সেই মার্কআপ কার্যকরভাবে দেখাতে চাইলে টেক্সট যোগ করার সময় html() মেথড ব‍্যবহার করতে হবে।

image

Very recently I bought a Galaxy Trend Duos. I was. Trying to get screenshot of some apps. Went to Google play and found some apps for taking screenshot. However most are for rooted devices. Suddenly found that I can take screenshot by pressing power and home button simultaneously. You just stop press both button at a time and keep pushing until you hear a beep. That’s it. No need to install app. You can download and install Google Keep from Play Store.

gc-editor-none

So far we have created a very basic plugin that simply shows our predefined text in articles. You probably have noticed that while we were configuring the plugin there was no other parameters to configure, we have simply enabled the plugin. But many other plugins have many parameters to configure, and how we can have such parameters be added to our plugin? Yes, we are going to learn that now.

Let us modify the plugin so that instead of ‘Hello World’ we can show anything we want. We will specify our desired text through a parameter, and that text will be displayed in article. Continue reading “Adding parameters to a Joomla 2.5 plugin” »

joomla_logo

Very recently I am impressed by Markdown and in all my writing using Markdown. Thanks to Leanpub I am writing some of my books in Markdown and planning to write all my blog posts in Markdown too.

As a first step, I have installed WP-Markdown plugin for my wordpress blog and happily using that.

But I am a Joomla! guy and usually support my clients managing and building sites with Joomla!. I was searching an extension for Joomla! that can easily transform an article written in Markdown syntax to HTML. In JED, with keyword markdown nothing returned what I was searching. So I decided to develop a plugin.

Great Google helped me finding PHP Markdown, it has two files – I downloaded PHP Markdown Extra 1.2.5. This file contains a readme and license text, and the main file markdown.php. The file contains classes to transform markdown’d text into HTML using PHP. Based on this, I created a content plugin for Joomla! 2.5, and fololowing are the steps which you may use as a Tutorial. Continue reading “How to create a content plugin (Markdown) for Joomla! 2.5 in 10 minutes” »

এপাচি-মাইএসকিউএল-পিএইচপি সহজপাঠ বইটির দ্বিতীয় সংস্করণ নিয়ে কাজ করছিলাম অনেক দিন থেকেই। কিন্তু কোনো না কোনো কারণে এটি শেষ করা বিলম্বিত হচ্ছিল মাত্র। প্রায়ই এটি নিয়ে গভীর মনোযোগ দিয়ে কাজ করি, কিন্তু হঠাৎ কিছু এসে যায় – আর সেটি বাদ দিয়ে অন‍্য কিছু নিয়ে ব‍্যস্ত হয়ে যেতে হয়। তারপর বেশ কিছুদিন পর আবার শুরু করি, আবার বাধা।

যাই হোক অবশেষ কাজটি শেষ হয়েছে – গত মাসে। বই প্রকাশককে দিয়েছি। তারপর অপেক্ষা ছাপা হয়ে বের হওয়ার। আজ ছাপা বই হাতে পেলাম। আগের চেয়ে ছাপার মান ভাল হয়েছে। বইয়ে খুব বেশি পরিবর্তন নেই, তবে পিএইচপি’র নূতন ভার্সনের সাথে সামঞ্জস‍্যপূর্ণ করা হয়েছে।

Apache-MySQL-PHP Shohojpath

এবার বইয়ের সাথে সিডি দেব না ভেবেছিলাম। কারণ আগের সংস্করণের সাথের সিডি নিয়ে বেশ ঝামেলা গেছে – প্রায়ই শুনতাম সিডি কাজ করে না। তাই এবার বইয়ের সব কোড https://github.com/suhreed/PHPBook লোকেশনে রেখেছি। বইয়ের মধ‍্যে তা উল্লেখও করেছি। কিন্তু প্রকাশক জানালেন বইয়ের সাথে সিডি দিতে হবে – কারণ বই কিনতে এসে পাঠক সিডি চাচ্ছেন। এই বইয়ে সিডি নেই দেখে সিডিওয়ালা বই কিনে নিয়ে যাচ্ছেন। সুতরাং কোড ও আরো কিছু টুলস দিয়ে সিডি বানিয়ে দিলাম। আশা করি এবার সেসব পাঠক খুশি হবেন।

joomal2.5

মড‍্যুলের জন‍্য এভাবে আমরা প‍্যারামিটার নির্ধারণ করে দিতে পারি XML ম‍্যানিফেস্ট ফাইলে। এরপর ব‍্যাকএন্ডে সেই মড‍্যুলের প্রোপার্টিজ থেকে এসব প‍্যারামিটারের মান নির্ধারণ করে দিতে পারেন। কিন্তু তারপর কী? সেসব প‍্যারামিটারকে ব‍্যবহার করবেন কীভাবে? আমাদের মড‍্যুলে আমরা প‍্যারামিটার হিসেবে যেসব মান কনফিগার করবে সেগুলির মান মড‍্যুলের আউটপুটে দেখাতে চাই। সেজন‍্য আমরা মড‍্যুল ফাইল mod-about.php এ নিচের মতো কোড যোগ করব: Continue reading “মড‍্যুলে প‍্যারামিটারের মান দেখানো” »

joomal2.5

As you know, content plugins for Joomla! mainly deals with content items. It searches the content items and performs some actions on the content. For example, when shubmitting an article, content plugin may check for valid markups and remove invalid markups. Similarly, when displaying the article, another content plugin may perform some activities to display the article in a special format. In this chapter, we will learn how to develop content plugins for Joomla!. In this chapter, you will learn:

মড‍্যুলের জন‍্য বিভন্ন অপশন নির্ধারণ করে দেয়া যায় যদি সেই মড‍্যুলের জন‍্য আমরা প‍্যারামিটার নির্ধারণ করে দিতে পারি। আপনি কোনো মড‍্যুল, যেমন Login Form, দেখলে সেখানে নিচের চিত্রের মতো বেশ কিছু প‍্যারামিটার কনফিগার করার অপশন দেখতে পাবেন।

Joomla module development

যেকোনো মড‍্যুল তৈরির সময় আপনি এরকম প‍্যারামিটার নির্ধারণ করে দিতে পারেন। এরকম প‍্যারামিটার নির্ধারণ করা হয় XML ম‍্যানিফেস্ট ফাইলের মাধ‍্যমে। আমরা আগেই এই ফাইল তৈরি করেছি। সেখানে নিচের মতো কর <config> … </config> ব্লক যোগ করুন। Continue reading “জুমলা মড‍্যুলে প‍্যারামিটার যোগ করা” »

joomla_logo

আগের পর্বে আমরা মড‍্যুলটির xml ম‍্যানিফেস্ট ফাইল তৈরি করেছি। এই ম‍্যানিফেস্টা ফাইলের মধ‍্যে মড‍্যুলটির জন‍্য প্রয়োজনীয় ফাইলের তালিকা ও অন‍্যান‍্য তথ‍্য রয়েছে। মড‍্যুল ইনস্টল করার জন‍্য এটি দরকার হবে। কিন্তু মড‍্যুলের মূল কাজ করবে যে ফাইল সেটি আমরা এখনও তৈরি করিনি। মূল ফাইল তৈরি করা শিখব এই পর্বে।

আসুন mod_about.php নামের ফাইলটি তৈরি করা যাক। mod_about ফোল্ডারের মধ‍্যে আমরা mod_about.php নামে এই ফাইলটি তৈরি করব যাতে নিচের মতো কোড থাকবে: Continue reading “জুমলা মড‍্যুল ডেভেলপমেন্ট – মড‍্যুল ফাইল তৈরি” »