One way to go might be to create a separate database, and then build a custom search. Have the custom database use a joint on the id’s of the posts.
The thing is though would each post be a separate record? Would you use parent and child categories as scientific classification? I am not sure how many child categories you can have, so that is something to check out if you don’t know, want to go that route, and if it is the best way to go in your use case.
And would you use tags?
For example one thing I like about Drupal is one can have different and separate vocabularies for tags, and have children tags (although I don’t know about how many children) I am not sure if you can have children tags in WordPress. And if you would need to. In WordPress you have the category system. So in essence you have the same.
Using custom fields might give you the opportunity to cross-link as you wish. So all records of a genus for example, or all records of a species. Although for phylum you would also want to show the class. But that might be doable. But then you might have a conflict between whether to assign the data value (single or multiple records?) to custom values or categories. Because when do you name a phylum a custom value or a category? And what about tags? Would they just give you one unordened list of tags unless you had parent and child tags. I don’t know if you can have parent and child tags (like you have in Drupal) Although I am sure you could write a plugin or there might already exist one. The prospect of editing a thousand tags, with scientific classification might be daunting. I hope I am not confusing you (which would be because of my explanation).
It is the linking of the records to each other, so say show all of the same species, that might pose the most problems as you are trying to get the clicked link to show up in the right url and have the theme follow.
Custom values solve this by being able to load a theme template file based on the custom value. So then you would have to write some kind of interface which would allow for example searchable/ jumpdown menus which have the current records. Or similar possibly to the current tags system. And custom values may already do the recognition part, don’t know off the top of my head. Or the custom value plugin I mentioned might do this or would be easy to add on. In any case something easy, simple, and quick for people to find and edit records from the post screen? But how would they edit a hundred records the same way you can in a database view? Would you have each record be one post. or how to add say a ‘tag’ to a hundred posts based on a genus.
Please keep in mind though that if WordPress updates, which it does regularly this could cause problems with custom code/ plugins. The release schedule of WordPress I find a blessing and a curse sometimes. Because you are hoping that all plugins catch up. Or you can write your own theme code. But the less code the better, because less to update. Now if you have the money to have some one check the code and rapidly implement, or you can do this yourself, or the plugin authors/ maintainers/ people that help have done this, then o.k. However keep in mind it can be a problem. Not saying it will happen, but mistakes can happen during an update (the more variables the greater the risk). Get to know the projects, some are very consistant. I don’t know the projects I mentioned enough to give a judgement on that. In the regard of updates I prefer Drupal more because they have a scheduled release schedule, with security updates and bug fixes if needed along the way. The release schedule of WordPress sometimes seems rushed from a scheduling point of view. We are all now going to next version, without knowing whether it is a security update or tweak or a bug fix. You can find this of course, but for a beginner it is important to remember that update to core can mean update to plugins. Will the update break the plugins, but the dashboard says I have to update the core? You can understand the dilemma.
I can definitely agree with you on the pros of WordPress, the coding is easy to understand (manageable), the theming is a breeze (with possibly the exception of some advanced stuff, but they don’t call it advance stuff for nothing), the back-end interface is great, the documentation is excellent. So I can definitely understand you.
Personally I am bit at a cross roads, when I choose to design a application from the groundup, because I get bogged down too much on the complications of creating a hybrid CMS functionality, then I am happy at how easy it goes to write a application from the ground up, but then realize of all the stuff I would have to write in order to get the same functionality of WordPress.