Skip to content

Drupalを使い始めた

2009/4/12 日曜日

Drupalとは、

GNU GPL 2 ライセンスのもと、オープンソースとして開発・配布がおこなわれている非常に洗練されたCMS。(はてなキーワード)


先月から今月にかけてDrupal本を4冊程購入

まず、Drupal Pro Book CMSカスタマイズ&デザインガイド
を購入し、データベースを利用するモジュールを一度作ってみたら仕組みがわかってきたので以下3冊を追加購入。

Pro Drupal Development (Beginning from Novice to Professional)

技術参考書は数あれど、Drupal ということを抜きにして客観的にみても、Pro Drupal Development は「非常によくできている」としか言いようがない。(Perl Tips)

Pro Drupal Development (Beginning from Novice to Professional)
Contents
 Copyright
 Dedication
 Foreword
 About the Author
 About the Technical Reviewer
 Acknowledgments
 Introduction
How Drupal Works
 What Is Drupal?
 Technology Stack
 Core
 Administrative Interface
 Modules
 Hooks
 Themes
 Nodes
 Blocks
 File Layout
 Serving a Request
 Summary
Writing a Module
 Creating the Files
 Implementing a Hook
 Adding Module-Specific Settings
 Adding the Data Entry Form
 Defining Your Own Administration Section
 Presenting a Settings Form to the User
 Validating User-Submitted Settings
 Storing Settings
 Further Steps
 Summary
Hooks, Actions, and Triggers
 Understanding Events and Triggers
 Understanding Actions
 Using the Context in Actions
 Examining the Context
 How Actions Are Stored
 Calling an Action Directly with actions_do()
 Defining Your Own Triggers with hook_hook_info()
 Adding Triggers to Existing Hooks
 Summary
The Menu System
 Callback Mapping
 Menu Nesting
 Access Control
 Title Localization and Customization
 Wildcards in Menu Items
 Altering Menu Items from Other Modules
 Altering Menu Links from Other Modules
 Kinds of Menu Items
 Common Tasks
 Using menu.module
 Common Mistakes
 Summary
Working with Databases
 Defining Database Parameters
 Understanding the Database Abstraction Layer
 Connecting to the Database
 Performing Simple Queries
 Retrieving Query Results
 The Schema API
 Inserts and Updates with drupal_write_record()
 Exposing Queries to Other Modules with hook_db_rewrite_sql()
 Connecting to Multiple Databases Within Drupal
 Using a Temporary Table
 Writing Your Own Database Driver
 Summary
Working with Users
 The $user Object
 Introduction to hook_user()
 The User Registration Process
 The Login Process
 External Login
 Summary
Working with Nodes
 So What Exactly Is a Node?
 Not Everything Is a Node
 Creating a Node Module
 How Nodes Are Stored
 Creating a Node Type with CCK
 Restricting Access to Nodes
 Summary
The Theme System
 Theme System Components
 Installing a Theme
 Building a PHPTemplate Theme
 Understanding Template Files
 Advanced Drupal Theming
 Summary
Working with Blocks
 What Is a Block?
 Block Configuration Options
 Block Placement
 Defining a Block
 Building a Block
 Enabling a Block When a Module Is Installed
 Block Visibility Examples
 Summary
The Form API
 Understanding Form Processing
 Creating Basic Forms
 Form API Properties
 Summary
Manipulating User Input: The Filter System
 Filters
 Filters and Input Formats
 Creating a Custom Filter
 Protecting Against Malicious Data
 Summary
Searching and Indexing Content
 Building a Custom Search Page
 Using the Search HTML Indexer
 Summary
Working with Files
 How Drupal Serves Files
 PHP Settings
 Media Handling
 File API
 Summary
Working with Taxonomy
 What Is Taxonomy?
 Kinds of Taxonomy
 Viewing Content by Term
 Storing Taxonomies
 Module-Based Vocabularies
 Common Tasks
 Taxonomy Functions
 Additional Resources
 Summary
Caching
 Knowing When to Cache
 How Caching Works
 How Caching Is Used Within Drupal Core
 Summary
Sessions
 What Are Sessions?
 Usage
 Session-Related Settings
 Storage
 Session Life Cycle
 Session Conversations
 Common Tasks
 Summary
Using jQuery
 What Is jQuery?
 The Old Way
 How jQuery Works
 jQuery Within Drupal
 Building a jQuery Voting Widget
 Next Steps
 Summary
Localization and Translation
 Enabling the Locale Module
 User Interface Translation
 Starting a New Translation
 Installing a Language Translation
 Right-to-Left Language Support
 Language Negotiation
 Content Translation
 Localization- and Translation-Related Files
 Additional Resources
 Summary
XML-RPC
 What Is XML-RPC?
 Prerequisites for XML-RPC
 XML-RPC Clients
 A Simple XML-RPC Server
 Built-In XML-RPC Methods
 Summary
Writing Secure Code
 Handling User Input
 Handling URLs Securely
 Making Queries Secure with db_query()
 Keeping Private Data Private with db_rewrite_sql()
 Dynamic Queries
 Permissions and Page Callbacks
 Cross-Site Request Forgeries (CSRF)
 File Security
 Encoding Mail Headers
 Protecting cron.php
 SSL Support
 Stand-Alone PHP
 AJAX Security
 Form API Security
 Protecting the Superuser Account
 Using eval()
 Summary
Development Best Practices
 Coding Standards
 PHP Comments
 Checking Your Coding Style Programmatically
 Finding Your Way Around Code with egrep
 Taking Advantage of Version Control
 Creating and Applying Patches
 Maintaining a Module
 Mixing SVN with CVS for Project Management
 Testing and Developing Code
 Summary
Optimizing Drupal
 Finding the Bottleneck
Installation Profiles
 Where Profiles Are Stored
 How Installation Profiles Work
 Summary
 Database Table Reference
 access (user module)
 accesslog (statistics module)
 actions (trigger module)
 actions_aid (trigger module)
 aggregator_category (aggregator module)
 aggregator_category_feed (aggregator module)
 aggregator_category_item (aggregator module)
 aggregator_feed (aggregator module)
 aggregator_item (aggregator module)
 authmap (user module)
 batch (batch.inc)
 blocks (block module)
 blocks_roles (block module)
 book (book module)
 boxes (block module)
 cache
 cache_block (block module)
 cache_filter (filter module)
 cache_form
 cache_menu
 cache_page
 cache_update
 comments (comment module)
 contact (contact module)
 files (upload module)
 filter_formats (filter module)
 filters (filter module)
 flood (contact module)
 forum (forum module)
 history (node module)
 languages (locale module)
 locales_source (locale module)
 locales_target (locale module)
 menu_custom (menu module)
 menu_links (menu module)
 menu_router
 node (node module)
 node_access (node module)
 node_comment_statistics (comment module)
 node_counter (statistics module)
 node_revisions (node module)
 node_type (node module)
 openid_association (openid module)
 permission (user module)
 poll (poll module)
 poll_choices (poll module)
 poll_votes (poll module)
 profile_fields (profile module)
 profile_values (profile module)
 role (user module)
 search_dataset (search module)
 search_index (search module)
 search_node_links (search module)
 search_total (search module)
 sessions
 system
 term_data (taxonomy module)
 term_hierarchy (taxonomy module)
 term_node (taxonomy module)
 term_relation (taxonomy module)
 term_synonym (taxonomy module)
 trigger_assignments (trigger module)
 upload (upload module)
 url_alias (path module)
 users (user module)
 users_roles (users)
 variable
 vocabulary (taxonomy module)
 vocabulary_node_types (taxonomy module)
 watchdog (dblog module)
 Resources
 Code
 Handbooks
 Forums
 Mailing Lists
 User Groups and Interest Groups
 Internet Relay Chat
 Videocasts
 Weblogs
 Conferences
 Contribute

Drupal 6 Social Networking

Drupal 6 Social Networking

Chapter 1: Drupal and social networking — In this chapter we look at exactly what Drupal is, what social networking is all about, and why Drupal is suitable to create a social networking site, before we install the software itself.

Chapter 2: Preparing Drupal for a social networking site — You will be introduced to the concepts of Drupal with a tour of the administration tools, as well as planning your new social networking site.

Chapter 3: User content: Contributions, forums and blogs — This chapter focuses on the contributions of your users, via forums, blogs, comments, and files as well as taking a brief look at user management.

Chapter 4: Managing users and profiles — Following from Chapter 3, we look at how to manage users and their roles, as well as looking at our site from their perspective with Blog themes, Customizing user profiles, and Open ID.

Chapter 5: Enabling user interaction — This chapter looks at enabling user interaction on the site with Organic Groups as well as building connections between users with the Friends module.

Chapter 6: Communicating with users — This chapter goes through how to communicate with users directly, through mailing lists, Twitter feeds, and in-page messages.

Chapter 7: Improving our networking with custom modules — This chapter illustrates how Drupal can be extended to match the needs of almost any social networking site, by creating a custom module for the site. This serves as a primer to creating Drupal modules.

Chapter 8: Designing our site — The design of a site is very important to a successful site; this chapter covers customizing the default theme to make it more unique, as well as a basic primer on creating custom themes.

Chapter 9: Deploying and maintaining our site — This chapter covers deploying our Drupal installation, securing it, and maintaining it, along with combating spam and looking at the reports Drupal generates.

Chapter 10: Promoting our site — This chapter looks at how to promote the site with SEO, marketing, and social/viral marketing and also has a quick look at ways to monetize the site

Drupal 6 Themes: Create New Themes for Your Drupal 6 Site With Clean Layout and Powerful Css Styling

Drupal 6 Themes: Create New Themes for Your Drupal 6 Site With Clean Layout and Powerful Css Styling

Chapter 1: The Elements of a Drupal Theme - In this chapter we examine how the theme system in Drupal works and examine the different approaches to working with Drupal themes.

Chapter 2: Theme set Up & Configuration - Here we look at all the various theming options that are available in the default Drupal system. By way of example, we take a default theme and customize it using only the options provided by the system.

Chapter 3: Working With Theme Engines - You will learn how the PHPTemplate theme engine works and how you can use this powerful tool,

Chapter 4: Identifying Templates, Style Sheets and Themable Functions - This chapter identifies all the themable elements in the Drupal system and tells you where to find the elements together with an explanation of their functions.

Chapter 5: Intercepts & Overrides - You will learn how to employ intercepts and overrides to modify the default styling in your Drupal theme.

Chapter 6: Modifying an Existing Theme - Here we look at how to implement extensive modifications to a default Drupal theme. This is a hands-on example of the techniques covered in previous chapters.

Chapter 7: Building a New Theme - In this chapter we examine how you can build from scratch a new theme employing the PHPTemplate theme engine.

Chapter 8: Dynamic Theming - You will learn how the Drupal system enables you to vary the styling between sections, pages or users.

Chapter 9: Dealing with Forms - This chapter covers the styling of forms in Drupal, one of the more complex areas in the system.

Appendix A: A Guide to Drupal Style Sheets – An inventory of the contents of all the style sheets in the Drupal system.

Appendix B: The Themers’ Toolkit – A listing of tools and extensions that make your work with themes easier and more efficient.

dBug

2009/3/18 水曜日

PHPで配列の中身を確認するのに
print_r()
をよく使っていて、
要素が少ないうちは問題ないけれど
要素が多くなるとスクロールしないと全部が見えないという状態になる

このGoogleの人みたいにワイドモニタを2枚位買って
縦にして使えばいいんじゃないかと思っていたところ
配列要素をテーブル組みにしてくれるdBugについて書かれたエントリーを見つけた

dBugのサンプルページ
http://dbug.ospinto.com/examples.php

表示させたくない部分の折り畳みもできる
配列だけでなく、オブジェクトの中身やデータベースのリソースも表示できる
これは手軽に使えて便利そう

MacBookでトリプルモニターを実現するのに↓これを使おうと思っていた。
ラトックシステム USB2.0マルチディスプレイアダプタ(DVI/VGA両対応) REX-USBDVI

MySQLでCSVファイルを編集

2009/2/10 火曜日

最近買ったMySQLデータベース構築バイブルを読んでいて
CSVストレージエンジンの存在を知り
(mysqlでSHOW ENGINES;を実行した画面に載っていた。)

Windows XPにXAMPPを入れて(v1.7)
phpMyAdmin上でCSVのテーブルを作成したところ
mysqlフォルダ内にあるdataフォルダにcsvファイルが出来た。
その後、「照合順序」をsjis_japanese_ciに設定しデータを挿入。
csvをそのままエクセルで開くことが出来た。
エクセルではちょっと面倒な処理を行うのに使えそうなのでいろいろ実験したい。

MySQLデータベース構築バイブル

eco検定合格

2009/2/5 木曜日

合格証が届いた。

オフィスmemo

2009/1/19 月曜日

オフィス探訪 アドビ編:木材と白熱灯に囲まれた暖かい環境

関連