Recent Topics

1 Apr 04, 2006 20:32    

I'm just starting to get into PHP and MySQL. I'm going through a book about it now, but I know one of the best ways to learn is to look through actual code and learn how a program works, so I can customize my sites.
I'm using b2evolution and I'd like to understand how it works. I know that the technical documentation exists, and of course, that I can access all the code.
But where do I begin? The system seems so big and there are so many files, I don't know where to start...

Does anyone have any suggestions? How did you learn about b2evolution, etc..

2 Apr 04, 2006 21:10

In my opinion, b2evo is way out of my league when it comes to learning php by looking at the code. This is a very complex piece of software, and as you noticed, the code is spread through dozens and dozens of files.

I feel far more comfortable looking at my skin's _main.php file and trying to understand how that works. If you can follow along with the code in that file (which displays your blog to the world) then you will have a great start in understanding how the program ties together.

3 Apr 04, 2006 21:18

Well, I've created my own skin, and I understand the statements there. Now I'm looking to make the next step.
I think you're right thought, that it is very copmlex. Perhaps there is a smaller project or some better resource to start poking around real-world php code?

4 Apr 04, 2006 21:59

b2evolution one of the first not-my-own-PHP-app that I've digged into - and I've digged since then.. :)

If you want to learn the code, you should definitely check out the current CVS (or at least "Phoenix"). There have been a lot changes to the infrastructure since 0.9 and also since "Phoenix", because all files have been re-organized to reflect the MVC (Model-View-Controller) schema.

See http://manual.b2evolution.net/CVS_version

*Edit*: for a start, the skin is good, as said. Otherwise there's mostly frontend and backend parts. Files like _main.inc.php are used to init everything, while _blog_main.inc.php gets used to init the blog for the front office.

I'd suggest to use an IDE that allows you to easily jump to so-called tags (variable/class/function definition), which helps a lot while navigation the source.

Also, if you decide to study it more, you could make a lot of people happy by documenting your discoveries in the manual (http://manual.b2evolution.net), in the "Developers" section. This would be very helpful for people like you that want to digg deeper into the code and perhaps even help out with development.
I'd be happy to look over it.

5 Apr 04, 2006 22:26

Plugins might be another area to explore to see how they work. I would love to see a newbie's guide to plugin creation (either on the wiki or elsewhere). But blueyed's idea is great, too.

7 May 02, 2006 10:54

b2evo back in the days of v0.9.x was great for learning BASIC php.

But now, with the >1.7 releases, it's getting insanely large and complex.

If you stick with modding skins when your starting off it's a great way to learn how php and b2evo works.

I've spent one year working with b2evo, and i believe i only know about 5% of the b2evo system. With about 4.5% of that being on the skinning side.

8 May 02, 2006 16:06

balupton wrote:

b2evo back in the days of v0.9.x was great for learning BASIC php.

But now, with the >1.7 releases, it's getting insanely large and complex.

I completely agree with the first, and probably agree with the second. One of the biggest reasons I went with b2evolution so long ago was how easily I could follow the logic of the code. In the 1.6+ world it's just not as easy for a code-friendly person. Shudder to think what someone unfamiliar with the general idea of code would feel when they wade in...

So back to the original topic and my take on it all: Step One is to simply play with all the settings in the back office and see how it plays out for visitors (the front end). Step Two is to tinker with skins and see how you can tweak and twizzle this and that. Step Three is to check out how plugins plugin, and Step Twelve is to plan on opening LOTS of files and getting dirty with the core.

Yeah: it's a big step from Three to Twelve ;)

9 May 02, 2006 16:16

EdB wrote:

Yeah: it's a big step from Three to Twelve ;)

Haha, or a EdB that can't count ;) jks.

I would say tinker with the skins as step one, because you don't want to destroy the backoffice by changing something you weren't meant to.

In the backoffice they don't have quotes like 'If you change this, the sky will fall down on your head.' - Yep, EdB, i still remember hacking up your Kubrick Skin ;)

Because with skinning you get the understanding of how php integrates with html. And because a lot is html it's nice and friendly because you know most of it. And then when you want to start learning MySQL the skins have that to... Well some do...

And for plugins i really think their should be a 'creating a plugin' tutorial. - Their probabaly is....

Oh on tutorials, EdB wrote a great one on creating a compliant 1.6 skin that i'm sure he will give u the link to.

Edit:
If you want to learn PHP, take a night course.
In Australia we have TAFE. It's real-world training in a mini-uni enviroment.
I find that university and high school teachers really do not know how to teach 'modern' programming languages. But hands on training does.


Form is loading...